2010-02-10 36 views
0

我有以下網址:http://www.domain.com/keyword/b21?f=&ca1=50&p=1Modrewrite正則表達式

而且RewriteRule我試圖使用方法如下:

RewriteRule ^([^.]+)/b([0-9]+)?f=([^.]+)&p=([0-9]+)$ script.php?id=$2&p=$2&filters=$3 

不幸的是這條規則不匹配的URL。

我認爲這與?有關,因爲我知道這是一個用於regualr表達式的字符。

任何幫助將大大apprecriated。

回答

2

我沒有測試過這個,在我之前我沒有用過這樣的重寫,所以它可能不完全正確。

RewriteCond %{QUERY_STRING} ^f=([^.]+)&p=([0-9]+)$ 
RewriteRule ^([^.]+)/b([0-9]+)$ script.php?id=$2&p=$2&filters=%1 
+0

很抱歉,這沒有工作:( – Lizard 2010-02-10 11:23:42

+0

我看過的文檔給你,並進行處理編輯我的答案,有希望的作品(或幾乎成功)。 – 2010-02-10 11:31:58

+0

這很棒!你是明星! – Lizard 2010-02-10 11:43:39

1

我強烈建議你使用重定向的完整查詢字符串的URL,直接在PHP腳本parse_str()