Windows 2012 服务器字符编码问题

Windows 2012 Server character encoding issue

我们有 2 台登台服务器,都是 运行 Windows Server 2012。我们有一个 MVC 5 网站,其中有一个带有 iframe 的页面。 iframe 的来源是网站上的另一个动作。此操作使用 WebClient.GetAsync 向另一个外部网站发出请求,并 return iFrame 中的此内容。

我们看到的问题是在开发人员机器和系统测试服务器上我们没有看到任何问题。但是在 2 个登台服务器之一上,字符输出完全不正确。我们得到看起来像重复序列和不可显示的字符,即 �

令人困惑的是,它只发生在暂存中的两台服务器之一上。我们查看了 iis 配置,machine.config,web.config,看不出有什么不同。

外部网站 return 指定中文字符集的响应。

<meta http-equiv="Content-Type" content="text/html;" charset="gb2312">

并且 1 个登台服务器处理它的方式似乎与其他服务器不同。

有没有人知道是什么原因造成的?

此问题是由 New Relic 引起的。外部网站和我们的网站都使用注入页面的 New Relic。这似乎导致了页面编码问题。

newrelic.config 文件的 <browserMonitoring> 中添加 <requestPathsExcluded> 元素解决了我们的问题。

但不确定为什么会导致问题。