我試圖讓mod_rewrite將所有非文件請求重定向到index.php
,以便我可以處理乾淨URL的路由。mod_rewrite現有的目錄更改地址欄中的URL
<IfModule mod_rewrite.c>
RewriteEngine On
# Route requests to index.php for processing
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.+)$ index.php?request=$1 [QSA,L]
</IfModule>
出於某種原因,當我不帶後綴斜線訪問現有的目錄,地址欄被改造成包括尾隨斜線和查詢字符串,這是不是很乾淨。
我可以通過將RewriteRule更改爲^(.+)/$
並添加RewriteBase /
來改善此問題。但是,這會將所有網址指向尾部的斜槓。沒什麼大不了的,但不是我想要的。
如果,例如,/test/folder
存在,我直接去,我想地址欄顯示,而不是顯示/test/folder/
或/test/folder/?request=/test/folder
。
不錯。這裏有另外一個很好的[鏈接](http://www.askapache.com/htaccess/mod_rewrite-variables-cheatsheet.html)來加入書籤。 – jerdiggity