2016-06-12 109 views
1

我想用mod_rewrite的.htaccess重寫URL包括查詢字符串

http://www.example.com/dir/something?foo=bar&stack=overflow 

沒有重定向URL映射到

http://www.example.com/dir/process.php?action=something&query_string=foo%3Dbar%3Fstatck%3Doverflow 

。這意味着訪問者瀏覽器中的URL應該是前者,但實際上應該像後者一樣工作。我怎樣才能做到這一點?

回答

0

您可以使用此:

RewriteEngine on 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^dir/(.+)$ /dir/process.php?action=$1 [QSA,NC,L] 

QSA標誌將addtitional查詢perameters自動追加到目標URL。

+0

你的回答將URL轉換爲'dir/process.php?action = something&foo = bar&stack = overflow'。但我想要的是將其轉換爲'dir/process.php?action = something&query_string = foo%3Dbar%3Fstatck%3Doverflow'。 **注意**:我不想追加附加參數,而是在另一個參數'query_string'下傳遞它們。 –