2010-06-16 73 views
0

我正在做一些非常簡單的mod_rewrite,它的行爲很奇怪。它表現得好像我正在使用[R]選項,但我不是。下面是.htaccess文件進行簡單的測試:mod_rewrite - 奇怪[R]行爲

RewriteEngine on 
RewriteRule ^page1$ page2 

這應該重定向到第一頁第二頁的請求,但保留URL在Web瀏覽器仍指向第1頁。這雖然沒有發生。它實際上將URL切換爲page2,就好像我正在使用此代碼一樣:

RewriteRule ^page1$ page2 [R] 

爲什麼這樣做?這不是默認行爲。我使用的是EC2的預配置機器,所以它可能是我不知道的apache配置中的一些東西。谷歌搜索一直徒勞。幫幫我?

這是Apache 2.12 btw。

+1

重寫日誌告訴你什麼? – 2010-06-16 21:54:43

+0

當我根據規範(http://httpd.apache.org/docs/2.0/mod/mod_rewrite.html#rewritelog)啓用RewriteLog時,我得到一個500錯誤。 GRRRR。 – Tal 2010-06-17 18:39:41

回答

0

我修正了它...不完全確定我做了什麼(doh!),因爲我用它來解決它。 我會嘗試進行一些調查性工作,以便我可以分享解決方案。

謝謝!

1

DirectorySlash往往是罪魁禍首。如果沒有,並且沒有進一步的重寫,請考慮使用[L]

+0

謝謝!不幸的是,那不是...還有其他想法嗎? – Tal 2010-06-16 22:00:11