2015-11-01 123 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