2011-04-28 69 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