jQuery适用于本地主机,但不适用于网站

时间:2010-05-05 18:28:16

标签: javascript jquery html firebug xampp

使用Notepad ++和XAMPP测试内容,然后我通过FTP将其上传到网站。在我的代码的头部,我有这个调用jQuery和脚本:

 <script type="text/javascript" src="/jquery.js"></script>
 <script type="text/javascript" src="/portfolio.js"></script>

它在我的XAMPP服务器上本地工作正常。但是一旦它上传到主机上,它就会抛出这个错误:

Resource interpreted as script but transferred with MIME type text/html.

不确定发生了什么,或者为什么使用jQuery很难。有什么想法吗?

4 个答案:

答案 0 :(得分:4)

这根本不是jQuery特有的。从服务器加载页面时,会向Web服务器发送请求以下载/jquery.js。在服务器的响应中,有一个HTTP标头,它向客户端提供有关文件类型的提示。这称为Content-Type标头。上面的错误消息表明服务器报告(错误地)/jquery.js类型为text/html,而不是{。}}。

您必须修改远程Web服务器的配置,以确保将具有.js扩展名的文件正确报告为具有application/x-javascript作为其MIME类型而不是text/html。这可以通过Apache配置文件中的以下指令来完成:

AddType application/x-javascript .js

我不确定为什么你的其他.js文件有效。无论如何,如果您因任何原因无法修改Web服务器配置,则可以尝试使用externally hosted copy of jQuery

如果您在Mac OS X上使用Safari,可能还会遇到WebKit / Safari中的错误。请参阅this related question

答案 1 :(得分:1)

原来文件名“jQuery.js”搞砸了。在本地,大写的'U'不是问题,但在服务器上它是导致它破坏的原因。我甚至不知道会发生这种情况: - /

答案 2 :(得分:0)

这表示您的服务器未配置为使用js文件的正确内容类型。它将它们作为text / html而不是text / javascript发送。可能是服务器配置正确。

答案 3 :(得分:0)

为什么不使用许多人可能已经缓存的Google托管版本,并且它始终保持更新等等。

http://code.google.com/apis/ajaxlibs/