【问题标题】:My htaccess file broke my CSS and JavaScript files我的 htaccess 文件破坏了我的 CSS 和 JavaScript 文件
【发布时间】:2012-12-18 19:36:31
【问题描述】:

我的 .htaccess 中缺少一些东西,

重写引擎开启 RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d # 类别 RewriteRule ^categories/(.*)$ /newwebsite/rewrite_cats.php?category=$1 [L,NC] # 产品和服务 重写规则 ^(.*)/(.*)$ /newwebsite/rewrite.php?sub=$1&second=$2 [L,NC]

我不知道这有什么问题,但是当我访问我的网站时,我看不到正在应用的样式和 JavaScript,如果我删除此行,它就会起作用:

RewriteRule ^categories/(.*)$ /newwebsite/rewrite_cats.php?category=$1 [L,NC]

我在 Chrome 控制台中遇到的错误如下:

资源解释为图像,但使用 MIME 类型 text/html 传输: 资源解释为脚本,但使用 MIME 类型 text/html 传输: 资源解释为样式表,但使用 MIME 类型 text/html 传输:

如果我删除或注释第一个 RewriteRule 行,一切正常。 我不知道发生了什么事,谁能帮帮我?

我已经意识到这是关于结合这两个规则的东西。当我评论第二个时,一切都很完美。

【问题讨论】:

    标签: php .htaccess mod-rewrite


    【解决方案1】:

    添加

    RewriteCond  %{REQUEST_FILENAME} !-f
    RewriteCond  %{REQUEST_FILENAME} !-d
    

    在你的规则之前

    哦,我希望您在 CSS 中使用绝对路径

    【讨论】:

    • 对不起,我忘了提到我的 htaccess 中已经有这些行,是的,我使用的是绝对路径。
    • @human 你确定你使用的是绝对路径而不是相对路径吗?这很可能是问题所在!
    • 这是我的html代码,,肯定是一个htaccess错误,因为我试过直接在我的浏览器中访问这些 css 文件之一,somesite.com/styles.css 我在浏览器中得到了我的 index.php。
    • 我不确定,但您可能必须在每条规则之前添加 RewriteCond 行。看看它是否有效。
    • @human then "/newwebsite/css/style.css" 实际上并没有指向您的 css 文件所在的位置
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-04-11
    • 2019-01-25
    • 2012-09-11
    • 2018-08-11
    • 2016-09-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多