2015-08-25 13 views
2

我有一個配置爲反向代理的Nginx服務器。我將一些數據發送給它,並且在我將所有數據發送完之前,上游服務器確定數據無效。當中間發生錯誤時通過nginx返回一個正文

我的上游服務器響應400代碼和錯誤消息,並關閉連接。 Nginx似乎不高興連接已被中止,並且它不會將響應主體傳遞迴客戶端。我看到的Nginx以下錯誤在「信息」的水平:

2015年8月25日十五時28分49秒[警告] 10#0:* 103的客戶機請求體被緩衝到一個臨時文件/選擇/ nginx/var/client_body_temp/0000000002,client:172.17.42.1,server:,request:「POST/upload HTTP/1.1」,host:「localhost:8002」

2015/08/25 15:28:49當讀取上游時,客戶端:172.17.42.1,服務器:,請求:「POST/whoopstrap HTTP/1.1」,上游:「http://172.17.1.250:80/upload」[錯誤] 10#0:* 103 readv ,host:「localhost:8002」

172.17.42.1 - - [25/Aug/2015:15:28:49 +0000]「POST /上傳HTTP/1.1" 400 25‘ - ’「捲曲/ 7.40.0」

如果我跟我的上游服務器與捲曲直接,它警告我說,然後才能完成其上傳連接關閉,但它顯示來自服務器的響應主體。

我可以讓Nginx傳遞響應正文嗎?在迴應之前是否需要接受整個上傳?

+0

我剛剛在nginx論壇上提過一個相關的問題:https://forum.nginx.org/read.php?2,277935 – naktinis

回答

1

你可能已經想通了,但我會爲後代回答。如建議here,是的,看起來您必須接受上游服務器中的整個上載(或「實施正確的連接拆除」)。

A similar question也已在SO上得到解答。

相關問題