此問題發生在 Nginx 和 PHP-FPM 提供的純 PHP 文件上。我在使用 Symfony 開發網站時偶然發現了這個問題,但有問題的內容長度范圍是 3702-15965 (我想知道為什么它與普通 PHP 不同)。到目前為止我嘗試過的:超時持續時間為 15 秒,但我嘗試將其增加到 300 秒,但仍然超時。所以我猜這是無限循環的事情。它看起來與資源無關,因為即使內容長度為 500 萬個字符它也能工作。使用不同的字符創建了各種測試,看看是否可以更改有問題的內容長度范圍。答案是否定的,我所有的測試范圍都保持不變。我嘗試過禁用 gzip。它沒有改變長度范圍,但響應發生了變化。Gzip 啟用響應:“上游請求超時” | Gzip 禁用響應:完全空白筆記:我的本地主機上不存在此問題。很少能正常打開頁面。我無法一致地重現這一點。除了“請求超時”行之外,Nginx、PHP 或 GCR 日志中沒有任何錯誤。任何幫助表示贊賞。謝謝。
2 回答

躍然一笑
TA貢獻1826條經驗 獲得超6個贊
有趣的是,我在寫問題時已經解決了這個問題。添加fastcgi_buffering off;
到 Nginx 配置修復了該問題。
但我仍然不明白問題是什么以及為什么禁用緩沖可以修復它。因此,如果有人可以解釋它,我不介意將該答案標記為解決方案。

慕俠2389804
TA貢獻1719條經驗 獲得超6個贊
這是特定于 Nginx 而不是 Cloud Run 的。
當 Nginx 開始接收來自 FastGCI 后端的響應時,它將在內存中緩沖標頭響應。如果響應對于內存來說太大,則可以將其中一部分保存到磁盤上的臨時文件中,該臨時文件由其他變量控制。
通過禁用 fastcgi_buffering,響應將在接收時同步傳遞到客戶端。
- 2 回答
- 0 關注
- 120 瀏覽
添加回答
舉報
0/150
提交
取消