将我的JS MIME类型设置为"text/javascript"。

13
根据此处:Javascript MIME Type,我应该将我的JS设置为"text/javascript"。但是当我检查浏览器和本地主机(或服务器)之间的网络通信时,我的Web服务器上托管的JS的MIME类型是application/x-javascript。来自Google CDN的JS (例如jQuery)是text/javascript。
我想让我的JS变成text/javascript。在我的.htaccess中,我尝试添加了这个:AddType text/javascript .js,但它没有改变我的MIME类型。
有什么建议吗?

4
应该使用application/javascript标识。不过,如果使用application/x-javascript也不会影响浏览器的解析。修复这个问题的最好方法是升级底层系统,因为它的mime.types文件已经过时。 - Quentin
“没有浏览器”或“没有当前的浏览器?”从链接中看来,IE可能存在问题。虽然application/javascript似乎是“正确”的MIME类型,但我正在尝试像Google一样使用text/javascript - StackOverflowNewbie
"application/x-javascript" 出现在我的 WAMP 和 LAMP 系统上。我觉得可能是我的代码、.htaccess 文件等有问题。 - StackOverflowNewbie
我不太确定为什么你需要或想要更改这个,你必须支持古老的浏览器吗? - WebChemist
2个回答

12

AddType指令应该足够了,除非有些东西强制指定类型,但你也可以尝试:

AddType指令应该足够了,除非有些东西强制指定类型,但你也可以尝试:

<Files "*.js">
    ForceType text/javascript
</Files>

一个更好的解决方案可能是查看您的虚拟主机/服务器配置以及所有Apache配置文件(可能默认包含在您的配置中)中的 application/x-javascript 实例,以了解它是如何设置的。最好在那里进行更改,而不是在htaccess文件中进行更改,因为htaccess文件可能没有必要的覆盖选项(例如,AddTypeForceType 需要 FileInfoAllowOverride 选项)。


3
你需要在Apache配置文件夹中找到mimes.types文件并更改设置。 更改:
application/javascript          js

to

text/javascript                 js

重启apache后,您应该能看到更改。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接