2012-10-27 21 views
1

有什麼區別:的Apache的mod_rewrite的RewriteCond來避免環路

RewriteCond %{ENV:REDIRECT_STATUS} 200 
RewriteRule^- [L] 

這一個:

RewriteCond %{ENV:REDIRECT_STATUS} ^. 
RewriteRule^- [L] 

事有湊巧,最後用這一個工作就好了很長一段時間,才猛然它停止工作,導致Apache顯示目錄列表!第一個解決了這個問題。 那麼第二個有什麼問題呢?

謝謝

回答

1
RewriteCond %{ENV:REDIRECT_STATUS} 200 

檢查REDIRECT_STATUS環境變量是否等於200(實際上,該模式會匹配含有200任何字符串)。

RewriteCond %{ENV:REDIRECT_STATUS} ^. 

檢查REDIRECT_STATUS環境變量是否至少有一個字符長。

第二個應該工作,因爲200應該匹配^.。也許問題在別處。

+0

謝謝。有什麼想法爲什麼使用200避免阿帕奇瘋狂? – Timido

+0

您發佈的規則不能提供足夠的信息。可能會檢查200是否是正確的做法。 –

+0

好的將嘗試發佈完整的規則 – Timido