【问题标题】:404 Error Page in .htaccess.htaccess 中的 404 错误页面
【发布时间】:2013-12-04 23:43:01
【问题描述】:

所以我正在尝试将自定义错误页面添加到我的 .htaccess 文件中。 .htaccess 文件位于网站根目录中。这是它似乎在子目录中工作的唯一方式(例如https://www.example.com/nope/nothinghere.html):

错误文档 404 https://www.example.com/404.html

现在它似乎没有注册为 404 错误页面,而只是暂时将丢失的页面重定向到 404.html。您也可以在 URL 中看到它,它更改为 404.html。

所以我试试这个:

错误文档 404 /404.html

这似乎注册为 404 错误页面,但它不适用于子目录。发生的情况是它正在寻找丢失的子目录中的所有 404.html 资源,然后页面看起来一团糟。有什么建议吗?

【问题讨论】:

  • This seems to register as a 404 error page but it doesn't work with sub-directories. 是什么意思?

标签: php html apache .htaccess


【解决方案1】:

因为你已经用 PHP 标记了这个项目。我的猜测是你正在使用 PHP。因此,我的建议是将错误页面设置为404.php 页面,您可以在其中指定页面内容以及响应代码(通过header() 调用)。

【讨论】:

    【解决方案2】:

    我是个假人。这是一个将相对链接更改为绝对链接的问题

    【讨论】:

    • 别忘了接受你自己的答案!如果您也对此添加更多解释,它可能会对其他人有所帮助:)
    【解决方案3】:

    您必须在您的 htaccess 文件中使用以下脚本 -

    ErrorDocument 404 https://www.example.com/404.html
    

    您还必须提供绝对 404 URL 才能从任何子目录中加载 404 页面。因此,即使您尝试加载像 https://www.example.com/xyz/index.html 这样的未知 URL,它也会重定向到绝对 URL https://www.example.com/404.html

    在处理 Google 缓存和索引后删除的页面时非常常见的问题。

    希望这会有所帮助。

    【讨论】:

      猜你喜欢
      • 2016-02-05
      • 2018-07-22
      • 2013-06-09
      • 1970-01-01
      • 2013-09-19
      • 1970-01-01
      • 2023-03-10
      • 2014-11-10
      • 1970-01-01
      相关资源
      最近更新 更多