IE 11 在 DotNetNuke 中复制 X-UA-兼容标签



在我们的一个网站上,当转到IE 11(或10(中具有recaptch的任何形式时 - recaptcha不起作用。 我们发现,在除 Edge 之外的所有版本的 IE 中,都会添加重复的 X-UA 兼容元标记。

我们已经在页面上<meta content="IE=edge,chrome=1" http-equiv="X-UA-Compatible" />,但在 IE 10 及更低版本中,它会在head标签之后立即添加以下内容。

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE9">
<![CDATA[<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" >]]>

这显然是在标记中我们自己的标签之前,因此似乎覆盖了仍然存在的设置。

我们尝试了许多任务

  • 禁用谷歌跟踪代码管理器
  • 删除谷歌分析
  • 禁用第三方模块

我们甚至在完全相同的服务器上克隆了我们的网站。 临时域运行完美。 但是一旦我们将 dns 指向临时站点 - 问题仍然存在。

我们假设它可能与Microsoft的兼容性视图有关。 通过添加它以绕过IE(浏览器级别设置(,一切都按预期工作 - 但这不是我们客户网站的解决方案。

但奇怪的是,现在即使在 chrome 中,如果您更改用户代理字符串 Chrome 也会收到<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE9">- 因此废弃了微软简历列表的想法。

该站点运行的是 DNN 7.4.2,我们升级到 8.0.4 - 问题仍然存在。 我已经扫描了 DNN 的两个源代码库,似乎没有什么可以指出问题所在。

因此,此问题将禁用我们所有的客户端联系我们表单 - 但仅适用于IE中的用户。 我和我的团队完全不知所措。 我希望这里有人可能有一点信息来帮助解决这个问题。

我们似乎已经找到了答案,它是带有第三方模块的。 我知道我们禁用了该模块(仅适用于管理员的权限(,上周这不起作用,但一定是 IE 缓存的一部分。 我重试关闭模块的权限并使 reCaptcha 正常工作。

我们正在使用 EasyDNNGallery - 我看到他们有一个电话https://apis.google.com/js/plusone.js- 我不能逐字逐句地说plusone.js是罪魁祸首 - 我只是在寻找任何其他可能干扰的谷歌参考。

这是有道理的,因为如果我们克隆站点 - EasyDNNGallery 没有被激活,因为它是域级别的激活。

最后,由于误报,我们继续绕圈子。 始终重试测试!

最新更新