說我想http://domain.com/product/?id=123
成爲http://domain.com/product/foo
,我該怎麼做在.htaccess
?我試過這樣的東西,但它不起作用:查詢字符串的國防部重寫
RewriteCond %{QUERY_STRING} ^id=123$ [NC]
RewriteRule ^/product$ /product/foo [NC,L,R=301]
建議?
注意:我不需要捕獲id
參數的值,因爲我不會在新URL中使用它。
更新1:
RewriteEngine On
RewriteBase /fisher
RewriteCond %{QUERY_STRING} ^id=123 [NC]
RewriteRule ^product/$ /product/foo [NC,L,R=301]
- 顯示RewriteEngine敘述和RewriteBase
- 中的RewriteCond刪除
$
- 在重寫規則
刪除/
當我去http://localhost/fisher/product/?id=123
,沒有任何反應。該URL保持不變。
嘗試獲得你的重寫規則模式的開始去掉正斜槓的。路徑不以.htaccess文件中的正斜槓開頭,因爲.htaccess文件是針對它們所在的目錄執行的。 (請注意,RewriteRule路徑確實以httpd.conf文件中的正斜槓開頭。) – Bobulous 2013-04-08 22:15:48
更新了我的問題。 – snoopy76 2013-04-08 22:51:03