我有一个使用XSL文件设置样式的XML文件。在Firefox中打开XML文件时,我没有遇到任何问题(虽然奇怪的是,有时它只会在我点击"重新加载"后)显示,但在Chrome / Chromium中我收到错误消息:
Resource interpreted as Stylesheet but transferred with MIME type application/xml
文件在这里:http://jonreeve.com/test/mike/biblexml.xml
我不认为XML / XSL语法存在任何不规则之处,所有链接似乎都措辞正确。
此外,这似乎与这里所有类似的问题类似,这些问题似乎与javascript和其他应用程序有关。这个只是纯XML / XSL。
答案 0 :(得分:7)
XSLT 1.0 规范明确指出XSLT的相应MIME类型是 text / xml 和 application / xml
在 XSLT 2.0 中,这已更改为 application / xslt + xml 。
但是
Chrome 32.0.1700.107会返回错误:
资源解释为样式表,但使用MIME类型 text / xml 进行传输;
资源解释为样式表,但使用MIME类型 application / xml 传输;
资源解释为样式表,但使用MIME类型 application / xslt + xml 进行传输;
如果 text / xsl 类型已通过,则Chrome不会返回任何错误。
答案 1 :(得分:1)
XSLT应该以MIME类型application/xslt+xml
提供,而不是application/xml
。您应该配置服务器来执行此操作。您需要一个包含
.htaccess
文件
AddType application/xslt+xml .xsl
这会将扩展名.xsl
与正确的MIME类型相关联。如果您已在XSLT目录或父目录中有.htaccess
文件,则可以添加该行。否则,请创建此类文件。