2009-10-09 48 views
11

我有以下網址:帶參數的Apache重寫規則?

http://domain.com/index.php?m=feedback&cSubject=My Subject 

我想有一個重寫規則,以便執行以下操作:

http://domain.com/feedback?Subject=My Subject 

映射到以前的URL。繼承人我現在的規則:

RewriteRule ^feedback?Subject=(.*)$ index.php?m=feedback&cSubject=$1 

似乎沒有工作壽!有任何想法嗎?

回答

14

查詢字符串不被Apache Mod_Rewrite解析,但有一個解決方法。試試這個

RewriteRule ^feedback/?$ index.php?m=feedback&c%{QUERY_STRING} [NC,L] 
+1

非常感謝! – James

+1

這就是我對我的動態搜索查詢所缺少的。謝謝,Clops! –

+0

最後如何擺脫必要的'?'?它不起作用,如果我只是刪除它 – user151496

5

可以使用的RewriteCond語句來完成你想要什麼:

RewriteEngine On 

RewriteCond %{QUERY_STRING} Subject=(.*) 
RewriteRule ^feedback$ index.php?m=feedback&cSubject=%1 [L] 
0

似乎是缺少=從clops回答給..

RewriteRule ^feedback/?$ index.php?m=feedback&c=%{QUERY_STRING} [NC,L] 

。至少我需要一個讓它工作。