ErrorDocument不显示页面

时间:2014-01-29 11:50:40

标签: php apache .htaccess

我有以下.htaccess文件,遗憾的是我在遇到404响应代码时没有重定向到错误页面

ErrorDocument 404 /404.php
Options +FollowSymLinks
RewriteEngine On
RewriteRule ^index.html index.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?params=$1$2$3 [NC]

这是我的PHP代码,它返回404:

if ($param1 != 'en')
    {
        header("HTTP/1.0 404 Not Found");
        die();
    }   

我必须提到我无法访问apache日志,所以我无法弄清楚发生了什么。浏览器接收到404错误消息,只显示空白页面。

1 个答案:

答案 0 :(得分:1)

这里没什么奇怪的。当Apache无法找到文档时,Apache仅使用ErrorDocument指令 。但显然,它已经找到了你调用的PHP脚本。 PHP设置的HTTP状态不再是Apache的问题(除了将其提供给客户端)。

如果您需要自定义错误文档,请将其包含在die()

之前
include_once "404.php";
die();