我有一個簡單的mod_rewrite系統建立在我的網站,基本上轉換這是怎麼回事與我的mod_rewrite?
http://site.com/file -> http://site.com/file.php
這裏的.htaccess文件
Options -MultiViews
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.site.com
RewriteRule ^(.*)$ http://site.com/$1 [R=301]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-z]+)/?$ http://site.com/$1.php [L]
這是工作了很長一段時間,然後一前兩天我意識到在RewriteRule工作時,它實際上是在狀態欄中更改我的URL。
例如,它會將/照片重定向到/photos.php,但它也會更改URL以顯示.php。這從來沒有發生過,我不確定發生了什麼事情觸發了變化。
任何想法?
這似乎是一個堅實的解決方案,但在這裏不是正確的:\我知道,改寫越來越到文件 - > file.php行,我行搞砸驗證(即我更改$ 1.php爲$ 1.php?foo = bar,然後http://site.com/file更改爲http://site.com/file.php?foo=bar) – jchmski
是的,第二個解決方案做到了!非常感謝我欣賞它! – jchmski
請注意,您需要採取兩個步驟來防止實際URL泄漏。另外,考慮選擇一個有意義的[StackOverflow名稱](http://tinyurl.com/so-hints),以便其他人可以使用[at-replies](http://meta.stackexchange。COM /問題/ 43019 /怎麼辦,評論,回覆工作)。 – outis