同一视图和浏览器版本中不同的IE XML/XSL行为,但具有不同的域用户帐户

同一视图和浏览器版本中不同的IE XML/XSL行为,但具有不同的域用户帐户,xml,internet-explorer,debugging,dns,xslt-1.0,Xml,Internet Explorer,Debugging,Dns,Xslt 1.0,我们的用户在尝试访问我们的web应用程序的某个视图时遇到问题(IE9;行为在6、8和9之间保持一致,但在域帐户之间不一致)。对于此特定用户的Windows域帐户,无论使用哪个凭据访问我们的应用程序,或使用哪台计算机的浏览器;尝试访问某些视图会导致IE显示错误消息“样式表不包含文档元素。样式表可能为空,也可能不是格式良好的XML文档。” 其他域帐户无法重现此错误,当我们使用VPN并使用自己的浏览器时,我们也无法重现此错误,尽管遵循完全相同的过程,域帐户具有完全相同的应用程序凭据、相同的权限和组成员

我们的用户在尝试访问我们的web应用程序的某个视图时遇到问题(IE9;行为在6、8和9之间保持一致,但在域帐户之间不一致)。对于此特定用户的Windows域帐户,无论使用哪个凭据访问我们的应用程序,或使用哪台计算机的浏览器;尝试访问某些视图会导致IE显示错误消息“样式表不包含文档元素。样式表可能为空,也可能不是格式良好的XML文档。”

其他域帐户无法重现此错误,当我们使用VPN并使用自己的浏览器时,我们也无法重现此错误,尽管遵循完全相同的过程,域帐户具有完全相同的应用程序凭据、相同的权限和组成员身份,与IE9的版本相匹配(也使用8和6测试)。我们有50个单独的客户使用此版本的应用程序,没有此类问题

webapp日志中没有任何内容可以说明这一点;成功案例和失败案例的请求和响应完全相同

手动将请求附加到浏览器地址栏中的URL会导致IE呈现我们期望的XML响应。在失败和成功的情况下,从浏览器请求返回的XML似乎格式良好

在发生此错误之前,所讨论的web应用程序已处于静态状态一段时间。客户的IT组织已验证可以复制错误的域帐户与无法复制错误的域帐户之间的权限和组成员身份相同

有什么建议吗?OLE或ODBC驱动程序设置是否会影响域帐户级别的XML解析?对于相同的域帐户,Internet Explorer是否会在不同的计算机上受到类似的影响,同时具有与无法重现此行为的帐户相同的组成员身份和权限


在清除浏览器中除下载历史记录和密码之外的所有内容后,我能够间歇性地让问题域帐户正确显示页面,但这只是少数时间,并且在几次请求后(通常是第一次请求)将显示错误消息。

当缓存页面或更新引用程序时,接受标头将更改,并且显然此域没有对文档的权限。因此,样式表的MIME类型从
application/xml
text/xsl
更改为
*.
text/html
。 解决方案是检查并防止缓存或重定向错误请求:

# Skip Opera
RewriteCond %{HTTP_USER_AGENT} !Opera 

# Check the Accept header for text/html
RewriteCond %{HTTP_ACCEPT} text\/html [OR]

# Check the Accept header for image type or *.*
RewriteCond %{HTTP_ACCEPT} gif|jpeg|png$|\*.\*$

# Forbid access if the file extension matches XSLT
RewriteRule .*\.(xsl|xslt)$ - [F]