Apache 404页面不应该出现

时间:2011-08-20 17:18:33

标签: apache

我已经有了一段时间我的网络服务器并且知道它是一个“apache”服务器...但除此之外我不太了解配置它...但直到不久前我有这一切都设置了我自己的404页面......但是现在即使我尝试去我的服务器上不存在的页面,它只会重定向到我的index.php中的public_html ...任何想法? ..

1 个答案:

答案 0 :(得分:0)

您可能有.htaccess文件配置为与Symfony或Zend等PHP框架一起使用。在这种情况下,框架应用程序为实际不存在的URL提供服务。也就是说,如果您的应用程序提供了URL /path/to/page,那么您实际上可能没有名为/path/to/page的文件。换句话说,框架为URL提供内容,而不需要URL和* .php源文件之间的1:1关系。在这种情况下,Apache需要配置为将不存在的页面的所有匹配发送到中央控制器(例如,index.php),然后中央控制器将确定要为其服务的内容。

查看.htaccess文件,您可能会看到以下几行:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php

如果您没有使用框架(或类似的机制来提供智能URL),那么您可以安全地删除这些行(或将其注释掉)以使您的Apache 404恢复。