2011-03-24 124 views
1

感謝您花時間幫忙!mod_rewrite漂亮的網址,可能仍然有查詢字符串

該場景是我mod_rewrite使像foobar.com/foo/bar/漂亮的URL像醜陋的像foobar.com/bootstrap.php?url=foo/bar這個奇妙的作品。

RewriteRule ^([a-z0-9/_]+)$ library/bootstrap.php?url=$1 [L] 

在某些情況下(特別是Twitter的OAuth回調)漂亮的URL將追加到它像foobar.com/foo/bar/?foo=bar&bar=foo查詢字符串。我需要醜陋的輸出網址看起來像foobar.com/bootstrap.php?url=foo/bar&foo=bar&bar=foo

請幫忙,因爲我不知道該怎麼做!我當然會看,因爲我確定一些正則表達式資源會揭示一些線索。

如果能拿出一個答案,請解釋一下,這樣我下次就能明白了!

謝謝!

回答

2

嘗試

RewriteRule ^([a-z0-9/_]+)$ library/bootstrap.php?url=$1 [L,QSA] 

http://httpd.apache.org/docs/2.0/mod/mod_rewrite.html

+0

QSA的查詢字符串附加 - 「此標記強制重寫引擎替換字符串的查詢字符串部分追加而不是替換現有的字符串,當你想通過重寫規則向查詢字符串添加更多數據時使用它。「 – 2011-03-24 12:05:19

+0

吶喊!謝謝!我打算使用'...?url = ...%{QUUERY_STRING}',但是你的答案更乾淨,效果更好! – 2011-03-24 12:05:27