【问题标题】:404 redirect work on current directory404 重定向当前目录的工作
【发布时间】:2017-02-26 10:52:08
【问题描述】:

我决定采取适用本站礼仪规则.htaccess

...
# Not found
ErrorDocument 404 /error/404.html
...

它正在工作,但包含的 cssjs 文件连接到当前目录,而不是相对于根目录。导致在 mysite.com/item/item/ 等子目录中加载 cssjs 文件时出错。


我可以这样解决

...
# Not found
ErrorDocument 404 mysite.com/error/404.html
...

它可以在任何地方工作,但url 正在改变,没有机会走后门。

我想在不改变url-address的情况下得到同样的结果。

我该怎么做?

【问题讨论】:

    标签: javascript php css apache .htaccess


    【解决方案1】:

    将此添加到您的404.htmlheader

    <base href="/">
    

    它适用于所有包含的链接和图片

    【讨论】:

      【解决方案2】:

      确保对 404.html 文件中的 css/js 文件的引用是绝对的(而不是相对的)。

      而不是使用

      <script src="script.js"></script>
      <link rel="stylesheet" type="text/css" href="style.css">
      

      或者

      <script src="../script.js"></script>
      <link rel="stylesheet" type="text/css" href="../style.css">
      

      你应该使用

      <script src="/static/js/script.js"></script>
      <link rel="stylesheet" type="text/css" href="/static/css/style.css">
      

      链接开头的/ 告诉浏览器从您的域的根目录(即http://DOMAIN/static/...)获取js/css 文件。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-03-22
        • 2013-11-27
        • 2011-01-24
        • 2011-09-06
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多