js和xml的Apache2 MIMEtypes

通过更改以下默认的MIMEtypes,Apache2上是否会有任何function/服务问题…

.js : application/x-javascript .xml : application/xml 

对此…

 .js : text/javascript .xml : text/xml 

我的testing似乎表明它会工作,但我不完全理解MIMEtypes与服务文件有关的目的。

你需要小心MIMEtypes,因为它们被发送到浏览器,以帮助他们解释如何呈现某些文件。

改变这两种特定的MIMEtypes不应该受到伤害,但是我一般会很谨慎。 mimetypes与该特定文件的标题一起发送,并且更改这些可能会导致某些客户端意外的行为。

即你不能真正知道改变MIMEtypes会发生什么,因为这是客户特定的。 在这种情况下,你需要有各种网页浏览器经验的人告诉你,否则你需要自己去testing一下。 一般来说,这是你需要小心的。

text/xml可能是一个问题。 一些caching代理将重写text/*文件的字符编码。 在XML文件的情况下,这可能会使实际的字符编码与文档本身内声明的字符编码不同。 另外,我认为text/xml已被弃用。

http://hsivonen.iki.fi/producing-xml/#textxml

因此,对于一般的XML文档,总是使用application/xml对于具有自己的已注册MIMEtypes的application/*+xmlapplication/xul+xml for XUL)。

javascript唯一正确的媒体types是application/javascript (或application/ecmascript ,这是更严格定义的)。

http://www.rfc-editor.org/rfc/rfc4329.txt

也就是说,许多浏览器不会在乎你是否将javascript作为text/plain甚至完成某些东西。