0
我試圖設置一個.htaccess文件,該文件將每個請求URL作爲GET
傳遞到名爲index.php
的文件中。唯一的例外是請求URL指向目錄res。現有文件夾的mod_rewrite條件
實例:
/wiki/cool-stuff => index.php?uri=/wiki/cool-stuff
/wiki/cool-stuff?news=on => index.php?uri=/wiki/cool-stuff&news=on
/res/cool-photo.jpg => res/cool-photo.jpg
兩個問題:
- 在第二示例中傳遞給
/wiki/cool-stuff
的GET變量不傳遞到的index.php - 訪問
/res
(未/res/
! !)突然給我看/res/?uri=res
在我的瀏覽器中 a nd index.php與uri=res/
。改爲訪問/res/
,顯示我index.php與uri=res/
並且瀏覽器中的URL保持不變(這是可以的)。
的的.htaccess:
RewriteEngine on
RewriteBase /subthing/
RewriteCond %{REQUEST_URI} !/res/(.+)$
RewriteCond %{REQUEST_URI} !index.php
RewriteRule (.*) index.php?uri=$1
我怎樣才能達到預期的行爲?
感謝您與'[QSA]'的TIPP。這一工程鰭即這似乎是因爲Firefox的'/ res'在URL欄中變成了'/ res /?uri = res'。它不會出現在Firefox中。我想'/ res /'(沒有任何尾隨的東西)也被重定向到'index.php',你能告訴我如何實現這個嗎? – 2012-07-25 12:40:28
@NiklasR這將重定向/ res /如果我沒有記錯。 Firefox緩存已知的重定向,可能會變得混亂。清除瀏覽記錄,然後請讓我知道是否仍有問題。 – 2012-07-25 13:44:35