2011-04-28 32 views
0

IM試圖使mod_rewrite的工作,作爲一個404處理器mod_rewrite的404處理器

RewriteCond %{SCRIPT_FILENAME} !-f 
RewriteCond %{SCRIPT_FILENAME} !-d 
RewriteCond %{HTTP_HOST}  domain\.com$ [NC] 
RewriteRule ^(.*)$    http://www.domain.com/error.php [L] 

,但在某些情況下,如果你請求一個URL沒有「文件名」,也改寫到error.php

www.domain.com 
www.domain.com/dir/ 
+0

你爲什麼試圖施加這種限制?爲什麼'ErrorDocument'不夠?此外,這屬於ServerFault。 – 0xC0000022L 2011-05-12 12:19:55

回答

2

理想情況下,你可以在.htaccess使用ErrorDocument,但如果你像我一樣需要在某一時刻顯示使用相同的代碼庫幾個域/語言定製404(相同的唯一名.hta ccess文件),我建議在每個虛擬主機的基礎上增加一個ErrorDocument指令。

+0

我只有一個虛擬主機(通配符)用於我所有的域名。我該如何處理這個問題? – clarkk 2011-05-13 08:14:29