【问题标题】:Custom error 404 page misconfiguration自定义错误 404 页面配置错误
【发布时间】:2014-03-07 08:11:59
【问题描述】:

我配置了 .htaccess 文件:

RewriteEngine On
ErrorDocument 404 /page-404.html

当我输入:www.mydomain.com/whatever-to-get-404-error 时,这工作正常,但是,当我使用 www.mydomain.com/some_folder/whatever-to-get-404-error 时,我得到没有 CSS 的页面。我的浏览器开始在“some_folder”中寻找 css,当然,这并不存在。

为什么会发生这种情况,我该如何解决?

【问题讨论】:

  • 当然这只是样式表的 HTML 中的相对路径与绝对路径,与 htaccess 无关

标签: css html .htaccess


【解决方案1】:

不要在 404 页面的标记中使用 CSS 文件的相对路径。使用绝对路径(最简单的方法,路径以/ 开头)。

<link rel="stylesheet" type="text/css" href="404.css">

这是一个相对的href,它将在当前文件夹中查找404.css

<link rel="stylesheet" type="text/css" href="/404.css">
                                            ^^^

这是一个绝对路径,它将在 根文件夹中查找404.css

【讨论】:

  • 为了确保我做对了:用mydomain.com/css/cssfile.css样式表的路径重新配置404页面?
  • 你不需要指定主机,在你的例子中你可以简单地设置href="/css/cssfile.css"
【解决方案2】:

虽然使用绝对 URL 是最佳选择。如果您有太多地方要更改,那么您可以尝试在页面的 HTML 标头中添加:

<base href="/" />

【讨论】:

    猜你喜欢
    • 2016-04-25
    • 2013-09-16
    • 1970-01-01
    • 2015-03-18
    • 1970-01-01
    • 2011-07-25
    • 2013-05-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多