自定义404和500错误无效

时间:2016-05-24 17:34:41

标签: php html .htaccess http-status-code-404 http-status-code-500

自定义404和500错误页面无法正常工作。在尝试直接访问或通过错误访问时,我对这两个页面都给出了以下错误: error img

.htaccess内容:

DirectoryIndex index.php
RewriteEngine on

RewriteCond $1 !^(index\.php|assets|robots\.txt|favicon\.ico)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ ./index.php/$1 [L,QSA]

ErrorDocument 404 /error_docs/404.php
ErrorDocument 500 /error_docs/500.php

错误页面都包含:

<p>text</p>

我已多次检查这两条路径并且它们是正确的。 如果我用文件路径替换文本,则显示文本并且错误有效。 感谢。

2 个答案:

答案 0 :(得分:0)

删除此行,最后准备就绪

RewriteRule ^(.*)$ ./index.php/$1 [L,QSA]

答案 1 :(得分:0)

作为XAMPP中的示例,当您使用 ErrorDocument 时,它会重定向到 localhost文件夹。如果我写:

ErrorDocument 404 /error_docs/404.php

重定向到:

localhost/error_docs/404.php

实际上,ErrorDocument总是重定向到DocumentRoot

所以最好的方法(我现在就知道)是用绝对路径