“413 Request Entity Too Large”错误解决方法

今天在做AfterLogic WebMail二次开发的时候遇到一个问题,上传失败。通过打印得知错误信息为“413 Request Entity Too Large”,如图:

解决方法:

打开nginx主配置文件nginx.conf,找到http{}段,添加client_max_body_size 20M;

client_max_body_size这个参数限制了上传文件的大小,默认是1M,我在上面的修改中给了20M的限制。

修改之后一定要重新载入 nginx (service nginx reload)。

到此问题解决。

如果上传还有限制,则查看php.ini文件进行调整:

php默认上传文件大小限制为2M,如果超出2M你需要修改php配置文件php.ini里面的参数。

post_max_size = 8M(表单提交的最大限制,此项不是限制上传单个文件的大小,而是针对整个表单提交的数据进行限制。)

upload_max_filesize = 2M (上传的单个文件的最大限制)

需要保证 post_max_size >= upload_max_filesize ,也就是前者不小于后者。

修改之后一定要重启 php-fpm 。