2016-01-20 25 views
2

所以,我有一個網站與一個index.php和GET請求發送給它(或根/)。如何將一個或多個GET請求重定向到不同的目錄或文件?

E.g. http://example.com/index.php?category=Birthday

http://example.com/?category=Birthday

我想能的301重定向只到一個新的目錄http://example.com/templates/?category=Birthday

我試着匹配.htaccess文件?category= GET請求的一部分,這些特定的要求,但它會導致一個無限循環只要它擊中新的目錄。這和我對理解RegEx有很大困難。

所有其他的幫助和教程做所有請求匹配到新目錄的任務,但我想重定向到只有在使用?category=

我的.htaccess文件有效,否則是空白,並具有沒有其他特別重寫。如果需要,我可以根據請求發佈代碼。謝謝!

回答

2

您可以在網站根目錄的.htaccess使用這樣的規則:

RewriteEngine On 

RewriteCond %{QUERY_STRING} (?:^|&)category= [NC] 
RewriteRule ^(index\.php)?$ /templates/ [L,NC,R=302] 

QUERY_STRING將自動結轉到目標URI。

+2

這絕對完美!如果使用任何其他GET參數,它甚至會將整個查詢傳送到新位置,這非常好。非常感謝您的幫助@anubhava。我不知道QUERY_STRING,但我很高興現在就做。 –

相關問題