Nginx

EC2 Linux、Nginx 和 Chrome 的 HTTP Keep-Alive 謎題

  • March 3, 2013

請幫助解決 HTTP keep-alive 問題。基本上,我在執行 nginx(v1.2.6)的 EC2 上有 amazon-ami linux(v2012.09

Chrome ( v25.0.1364.99 ) 正常訪問 HTTP 頁面,然後在大約 30 秒後連接斷開(原因不明),由netstat. 之後,如果 chrome 從伺服器請求某些東西,它就無法接收任何東西並且超時大約一分鐘,等待明顯斷開連接的東西。超時後後續請求工作正常。

Nginx 配置有keepalive_timeout 70s 60s;

cat /proc/sys/net/ipv4/tcp_keepalive_time節目7200

這可能很容易,但Google搜尋發現了很多類似的問題,但不完全是。(https://code.google.com/p/chromium/issues/detail?id=27400在這裡閱讀http://blog.fastmail.fm/2011/06/28/http-keep-alive-connection-timeouts /)。

哪些答案會有所幫助:

  • 如何更改伺服器配置以避免過度等待 Chrome 斷開連接
  • 哪些產品可能存在錯誤或可用的解決方法

Disable keep alive for chrome 是一種不得已的解決方案:因為它違背了我想要減少響應延遲並具有較長的 HTTP 連接保持活動時間(至少一分鐘)的目的。謝謝

在這樣的環境下,HTTPS 連接不會在 30 秒後被偷偷關閉,所以當我將一個站點完全置於 HTTPS 下(實際上是計劃好的)時,Chrome Keep=Alive 問題不再通過 Keep-Alive 表現出來,這是可以接受的。

不幸的是,我沒有資源投資於 TCP 調試。因此,難題本身並沒有完全解決。

非常感謝您的建議!

引用自:https://serverfault.com/questions/481974