小编AKn*_*nox的帖子

chrome 请求卡在等待中

问题描述

我们有一个服务于静态资产的网络服务器。我们遇到了一个问题,在您浏览一些 http 请求后,它会卡在“待处理”状态。在 chrome 检查器中,响应标头确实会返回,但请求不会超时,并且看起来像是在下载。在时间线视图中,“等待 (ttfb)”是最后填写的项目(例如 400 毫秒),然后有一个注释“注意:请求尚未完成!”

这个问题似乎仅限于 chrome,并且当网站运行 https 时。我们无法在 safari、ff、ie 上重现,如果 https 关闭,我们也无法重现。

再现。采取的步骤

  1. 打开 chrome 隐身
  2. 打开检查器工具 > 网络选项卡
  3. 导航到站点
  4. 通常第一页和它的所有请求都完成了
  5. 浏览到另一个页面
  6. 意外行为:页面的某些部分无法加载;xhr 请求 .html 文件,通常是 jpg 图像。在 chrome 的 net 选项卡中检查时,他们说“待定”

奇怪的注释:

  1. 按照上述步骤操作后,如果您在新选项卡中打开“待处理”请求,则该选项卡会“旋转”
  2. 如果您关闭第一个选项卡,带有“待处理”url 的第二个选项卡会解析,这会导致我们调查保持活动和超时,但无济于事。
  3. 这个完整的问题有时也会出现在第一个请求中(文档)

环境注意事项:

  • 前端是 angularjs,通过 chrome 访问其他浏览器似乎没有这个问题
  • 服务器运行 https,通配符证书( *.domain.com )
  • nginx 版本 1.9.3

    # some variables we've tweaked
    worker_processes 4;
    worker_connections 4000;
    keepalive_timeout 15;
    client_body_timeout 12;
    gzip on
    
    Run Code Online (Sandbox Code Playgroud)
  • nginx 日志不会抱怨任何事情

  • 当服务器上有负载时,cpu / ram 永远不会接近 maxxing
  • 响应头包括;etag、gzip、内容类型、日期、最后修改时间、服务器、状态(200)、严格传输安全:最大年龄=604800 ... …

ssl nginx chrome

9
推荐指数
2
解决办法
3万
查看次数

标签 统计

chrome ×1

nginx ×1

ssl ×1