我有一个带有 MultiViews 的 Apache 服务器,这是我的目录布局:
/style.css [text/css]
/style.xsl [text/xsl]
/index.xml [application/xml]
在我的 index.xml 文件中,我引用了 XSL:
<?xml-stylesheet href="/style"?>
在 XSL 中,我引用了 CSS:
<link rel="stylesheet" href="/style" />
这种方法在我尝试过的任何浏览器中都不起作用。
在 Firefox-16.0.1 中,我看到以下消息:
Error loading stylesheet: An XSLT stylesheet does not have an XML mimetype:
我调试 HTTP 对话,我注意到 Firefox 正在发送:
Accept: */*
Firefox 请求任何类型的内容,因此 Apache 选择发送 /style.css。
我希望需要特定内容类型的 Web 浏览器为这些内容类型发送明确的 Accept 标头。
当我发现另外两个明确记录摆脱 Accept 约束时,我准备提交一个错误。
我可以通过将扩展名放在文件名中来解决这个问题,但这应该与图像内容协商的工作方式相同,如W3C 博客中所述。好处是他们可以稍后添加新的内容类型,而无需更新任何文档。
这是一个错误,还是我有什么问题?