[英]Random HTTP 408 on POST requests and no body is transferred
前段時間我們注意到nginx連接日志中有多個HTTP 408。 所有此類請求都是 POST 請求,請求時間等於 nginx client_body_timeout。 我們收集了 tcp 轉儲和解密 tls 流量。 看起來客戶端開始請求,發送具有指定非零內容長度 header 的標頭,但是在標頭和正文之間的分隔符之后,根本沒有從客戶端傳輸數據。 Nginx 禮貌地等待任何數據,並在等於 client_body_timeout 的時間后輕輕關閉連接。 誰能澄清這種行為的原因是什么? 一些附加信息:
我們有同樣的問題。 在我們的例子中,nginx 服務器在收到帶有大標頭(20Kb)但正文長度為 0 的 https POST 請求時返回 http 408 代碼 - 具有較小 header 的相同請求可以正常工作。 僅添加 1 個字符的 body(' ') 解決了我們案例中的問題,但我不太明白原因。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.