【问题标题】:Codeigniter showing 404 error for javascript fileCodeigniter 显示 javascript 文件的 404 错误
【发布时间】:2012-06-20 05:31:26
【问题描述】:

Codeigniter 显示 404 错误页面,用于 javascript 文件。该文件位于js 文件夹中。有问题的文件是jquery.cookie.js

如果我更改文件名,那么我可以访问该文件。

该文件没有路由设置或 .htaccess 规则,但由于某种原因,当访问 javascript 文件时,codeigniter 会显示其默认的 404 页面。

【问题讨论】:

  • 您可以访问同一文件夹中的其他文件吗?
  • @swapnesh 是的,我可以访问文件夹中的所有其他文件。即使我更改了文件名,我也可以访问该文件,但当文件名是 jquery.cookie.js 时则不能
  • @WebNovice.. 你能告诉我你是如何导航到这些文件的吗?
  • @swapnesh 当某些 jquery 函数在该站点上不起作用时,我注意到了该错误。因此,我尝试使用其 URL 直接访问 JS 文件,它向我显示 CI 404 页面。 js 文件夹位于根文件夹中。该文件夹不包含任何.htaccess 甚至index.html 文件。当我转到www.mysite.com/js 时,它会列出所有文件,包括有问题的文件,但是当我单击它时,它会将我带到 CI 404 页面。列出的其他文件不会发生这种情况。
  • ..你可以尝试重命名你的 .htaccess 文件,让我知道它是否有效

标签: jquery codeigniter


【解决方案1】:

我以前遇到过这个问题 - 问题源于 CI 寻找某些恶意字符串的善意安全系统。我从来没有追查过它的确切位置,但如果 JS 文件名包含“.cookie”,它将被 CI 的内部过滤器拒绝。

快速解决方法是重命名文件以不包含单词 cookie,或将文件名中的 . 更改为 _

【讨论】:

  • 哪里说codeigniter有这样的安全系统?如果有,CI 应该提到它。浪费了很多时间寻找导致它的原因。我将文件名更改为jquery.cookie1.js,它起作用了。
【解决方案2】:

好的,终于知道问题出在哪里了。任何文件名中包含“cookie”的文件都被我们服务器上的 mod_security 阻止。

【讨论】:

    猜你喜欢
    • 2014-05-25
    • 1970-01-01
    • 2015-12-13
    • 2012-07-12
    • 2016-03-09
    • 2016-08-15
    • 2014-08-01
    • 2015-07-04
    • 1970-01-01
    相关资源
    最近更新 更多