2015-11-01 117 views
1

好球員,我按照這些答案 413 Request Entity Too LargeNginx的:413請求實體過大錯誤

添加client_max_body_size 20M在nginx.conf,也該與我的代理配置相關的文件夾內httpd.confd。我添加了http,服務器和位置塊。我使用Play!框架作爲我的門戶。

但仍然,我會有Request entity too large error。你們有什麼想法或建議嗎?或鏈接通過?

感謝

+0

Play也可以返回這個響應碼。你使用什麼版本? –

+0

我用play 2.11 @ m-z – ans4175

回答

2

還有在發揮,這聽起來好像你已經配置了前面的web服務器,遊戲本身具有最大請求內容長度的限制,這裏記載:https://www.playframework.com/documentation/2.5.x/JavaBodyParsers#Content-length-limits

大多數內置的主體解析器緩存內存中的主體,並將其緩存在磁盤上。如果緩衝是無限的,這會使 應用程序的潛在漏洞惡意或不小心使用。因此,Play具有兩個配置的緩衝區限制,一個用於內存緩衝區,另一個用於磁盤緩衝區。

存儲器緩衝區限制使用 play.http.parser.maxMemoryBuffer,缺省配置100KB,而 磁盤緩衝區限制使用play.http.parser.maxDiskBuffer, ,缺省值爲10MB配置。這些既可以在 application.conf進行配置,例如,增加內存緩衝區限制 256KB:

根據不同的情況,你可能要小心了太多的增加此限制 - 如果你有不信任的客戶端,他們可能會通過在很短的時間內發送大量非常大的請求而使服務器超載。這可能會導致您的服務器崩潰,導致拒絕服務攻擊OutOfMemoryError

+0

我弄明白了。事實證明,即使在Play增加的情況下,我的Nginx也會阻止它 – ans4175