IIS 的响应在中间“随机”插入了 http 标头信息

IIS 的响应在中间“随机”插入了 http 标头信息

我们有一台装有 IIS 的 Windows 2008 Server。我们有一个在 IIS 上运行的 asp.net 站点。我们首先在 Default.aspx 页面上发现了这个问题,其中有一些 javascript 如下所示:

<script language="javascript" type="text/javascript">
 ... ...
    function removeBodyListener() {
        //remove the onclick event listener so that no more pages can be opened
        document.body.setAttribute('onclick', '');
    }
 ... ...
</script>

由于某种原因,它被以如下形式发送给客户:

    <script language="javascript" type="text/javascript">
     ... ...
        function removeBodyListener() {
            //HTTP/1.1 200 OK
Cache-Control: private
Content-Type: text/plain; chars document.body.setAttribute('onclick', '');
        }
     ... ...
    </script>

通过从我们的 javascript 中删除注释,我们阻止了在 default.aspx 上发生替换。我们认为这样就没问题了,但现在我们发现,在某些情况下,我们对 AJAX 调用的 JSON 响应会被此 http 标头信息替换,这会破坏 JSON 并导致我们无法再正确处理数据。

奇怪的是,我们在服务器上查看网站时无法重现该问题,但从客户端电脑查看网站时却遇到了该问题。

我们尝试禁用所有防火墙和防病毒软件。我们在 IE 和 Firefox 上进行了检查,并确认浏览器中没有指定代理。不幸的是,服务器位于客户端网络上,因此我们几乎无法控制所使用的环境。有人有什么建议吗?

答案1

原来问题出在“Symmantec End Point protection”上。卸载后一切正常。我不知道为什么告诉 Symmantec 禁用其所有功能不起作用,但卸载却起作用了。我猜当你告诉 Symmantec 完全禁用它时,它根本不听你的,还是自己做事。

相关内容