Reputation: 432
Okay guys, I have followed these answers 413 Request Entity Too Large
add client_max_body_size 20M
in nginx.conf and also inside httpd.confd folder which is related with my proxy configuration. I added in http, server and location block. I use Play! Framework as my gateway.
But still, I'd have Request entity too large error
. Do you guys have any idea or suggestions? Or link to follow through?
Thanks
Upvotes: 1
Views: 1689
Reputation: 15464
As well as the web servers in front of Play, which it sounds like you have configured, Play itself has max request Content-Length limits, documented here: https://www.playframework.com/documentation/2.5.x/JavaBodyParsers#Content-length-limits
Most of the built in body parsers buffer the body in memory, and some buffer it on disk. If the buffering was unbounded, this would open up a potential vulnerability to malicious or careless use of the application. For this reason, Play has two configured buffer limits, one for in memory buffering, and one for disk buffering.
The memory buffer limit is configured using
play.http.parser.maxMemoryBuffer
, and defaults to 100KB, while the disk buffer limit is configured usingplay.http.parser.maxDiskBuffer
, and defaults to 10MB. These can both be configured in application.conf, for example, to increase the memory buffer limit to 256KB:
Depending on the situation, you may want to be careful with increasing this limit too much -- if you have untrusted clients they may be able to overload your server by sending lots of very large requests in a short space of time. This may cause your server to crash with an OutOfMemoryError
, leading to a denial of service attack.
Upvotes: 2