You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ASP.NET项目部署后Chrome随机出现无法访问问题求助

可能的原因及排查方向
  • Chrome协议兼容性问题:Chrome默认启用HTTP/2和QUIC协议,而Windows Server 2012 R2的IIS 8.5对HTTP/2的支持存在部分兼容性限制,比如连接复用或流控逻辑冲突,会随机导致连接超时。可以在Chrome地址栏输入chrome://flags/#enable-quic禁用QUIC协议,或者在IIS管理器中关闭站点的HTTP/2支持测试。

  • Chrome套接字池耗尽:Chrome对同一域名的并发连接数有默认限制(通常是6个),当用户同时打开多个页面或发起多个请求时,可能触发套接字池占满,新请求因无法获取连接而超时。可以通过chrome://net-internals/#sockets查看实时套接字状态,也可以通过Chrome组策略调整MaxConnectionsPerServer参数提升限制。

  • IIS应用程序池异常:

    • 应用程序池的空闲超时(默认20分钟)会在无请求时自动回收,回收后第一个请求需要重新初始化应用,可能导致超时;
    • 应用程序池的队列长度默认是1000,若突发请求超过队列上限,后续请求会直接超时。
      可以在IIS的应用程序池高级设置里调整空闲超时时间(设为0禁用),或增大队列长度。
  • ASP.NET资源阻塞:

    • 若应用使用InProc会话状态,单个请求长时间占用会话锁(比如执行耗时的数据库查询或IO操作),同会话的其他请求会被阻塞,Chrome因会话保持更严格,更容易出现超时;
    • 应用中存在未释放的资源(如数据库连接、文件句柄),偶尔导致.NET线程池耗尽,请求排队超时。可以在应用中添加日志跟踪耗时操作,或用性能监视器查看线程池队列长度。
  • Chrome本地环境干扰:

    • 浏览器扩展(如广告拦截、代理工具)可能偶尔拦截请求,可尝试用Chrome隐身模式测试,若隐身模式正常,排查并禁用可疑扩展;
    • Chrome本地DNS缓存异常,可通过chrome://net-internals/#dns清除缓存,或手动设置DNS为公共服务器(如8.8.8.8)。
  • 服务器TCP/IP配置问题:服务器上TIME_WAIT状态的TCP连接过多,会耗尽可用端口,导致新连接无法建立。用命令netstat -ano | findstr TIME_WAIT查看连接数量,若超过一万,可调整注册表参数:

    • 设置TcpTimedWaitDelay为30(缩短TIME_WAIT时长);
    • 增大MaxUserPort上限(比如设为65534)。
      另外,服务器防火墙或杀毒软件可能误判Chrome的连接请求,临时关闭测试是否恢复正常。

内容的提问来源于stack exchange,提问作者Alex

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 01:12:39