我们的 ASP.NET 应用程序(最近更新到 ASP.NET 4.0)的一些用户报告称,在 Google Chrome 中出现页面挂起 - 具体来说是 Chrome 错误:
该网页不可用。错误 7 (net::ERR_TIMED_OUT):操作超时。
用户表示其他网站都很好 - 只是我们的网站给他们带来了麻烦 - 而当他们尝试使用我们的应用程序与其他浏览器(例如 FF/IE)一起使用时,那些浏览器都没有问题。
我们当然对他们安装的 Chrome(版本?/病毒?)提出质疑——这就是所有 Google Chrome 论坛所讨论的有关此错误和挂起的问题。
我们决定进行一些自己的测试,结果出乎意料的是,在 Windows 7 和最新版本的 Chrome(未安装扩展程序)下运行我们的生产应用程序时,我们间歇性地收到“错误 7”。
在我们收到错误的时刻,我们尝试使用 IE/FF 访问该应用程序 - 并且一切正常。
此外,根据我们对网络日志的分析,当我们收到“错误 7”时,我们的网络服务器(Win 2008 R2 下的 IIS 7.5,已完全修补)确实不是接收来自 Chrome 的 HTTP 请求。
因此对我们来说,神秘的是为什么 Chrome 周期性地无法与我们的 Web 服务器建立 HTTP 连接 - 而其他浏览器却完全没有问题。
我知道这是一个模糊的场景,我们无法始终如一地重现。但如果有人对我们可以研究的内容或我们可以尝试的进一步测试有一些想法,我一定会很感激。
更新:
在我们的测试中,这个问题似乎可以通过在 Chrome 中进入选项 > 后台 > 网络 > 更改代理设置... > LAN 设置,并确保“自动检测设置”处于打开状态而得到很大程度的解决。不是已选择。此解决方案是在 Google 论坛之一上找到的。
答案1
这很奇怪。您可能需要使用 Wireshark 之类的工具在 IIS 之前进行检查。我最近遇到了一个相当类似的问题,尽管它不是基于浏览器的。我们的 Broadcom 网络适配器在负载过大的情况下,数据包一到达服务器就会丢弃。我不得不使用 Wireshark 来证明请求是在网卡上丢弃的。驱动程序更新基本解决了这个问题,尽管我们最终完全更换了 NIC。
检查任何防火墙 IPS 策略,以防他们由于某种原因不喜欢 Chrome 浏览器代理。
答案2
尝试在 chrome.exe 的命令行上运行以下开关.....
–禁用 SSL 错误启动
由于 Chrome 选择包含该草案规范“功能”,我们的一些 SSL 网站出现了一些问题。