HTACCESS 错误文档 404 /404.htm 不工作

Posted

技术标签:

【中文标题】HTACCESS 错误文档 404 /404.htm 不工作【英文标题】:HTACCESS ErrorDocument 404 /404.htm not working 【发布时间】:2012-06-22 05:22:54 【问题描述】:

我正在使用 COdeigniter.. 我有一个.htaccess。问题是服务器在访问服务器上不可用的 www.example.com/notfoundimage.png 时,应将其重定向到 .404htm (设计的错误文档模板)......但是,它却给出了服务器错误

HTACCESS:

ErrorDocument 404 /404.htm 
ErrorDocument 400 /404.htm
ErrorDocument 403 /404.htm

ErrorDocument 500 /404.htm

访问不存在的文件 www.example.com/notfoundimage.png 时出错

服务器错误网站在检索时遇到错误 http://www.example.com/notfoundimage.png。它可能会下降 维护或配置错误。

如果我从 htaccess 中评论这一行

错误文档 404 /404.htm

出现错误 404(应该是)。但我需要以上行将 404 重定向到我的模板页面:404.htm

【问题讨论】:

查看apache错误日志,看看是否找到更有意义的错误信息。 直接访问example.com/404.html会发生什么? 【参考方案1】:

确保您的文件具有读取权限,并尝试使用.html 文件扩展名。

【讨论】:

【参考方案2】:

此服务器无法验证您是否有权访问所请求的文档。您提供了错误的凭据(例如密码错误),或者您的浏览器不了解如何提供所需的凭据。

此外,在尝试使用 ErrorDocument 处理请求时遇到 404 Not Found 错误。

【讨论】:

【参考方案3】:

我不认为 mod_rewrite 会重写 ErrorDocument 文件,但我可能错了。这是未经测试的,但您可以通过将其放在您的 mod_rewrite 部分的早期来快速测试:

RewriteCond  %REQUEST_FILENAME  -f
RewriteRule  .*                   -     [L]

如果这不起作用,则将其删除。还要检查它是否不会破坏任何东西! (我确信它可以缩短为一行,但这只是我在 mod_rewrite 中使用的样式)。

【讨论】:

以上是关于HTACCESS 错误文档 404 /404.htm 不工作的主要内容,如果未能解决你的问题,请参考以下文章

Nginx自定义404页面

404错误文档问题

.htaccess文件的常见用法(301、404等配置)

根域和子文件夹中的两个 htaccess 中的 404 问题

django关闭调试信息,打开内置错误视图

htaccess 文件不会带我进入 404 错误页面