作者:包括萨u盾根本_173 | 来源:互联网 | 2014-05-28 09:40
以前用php上传文件,先是修改php.ini的设置,前些日子服务器换了环境(采用nginx+php),今天突然发现稍大一点的文件不能上传了,纠结半天,终于找到是nginx的client_max_body_size配置选项值造成的413错误。现在分享一下处理方法。问题说明:php.ini配置文
以前用php上传文件,先是修改php.ini的设置,前些日子服务器换了环境(采用
nginx+php),今天突然发现稍大一点的文件不能上传了,纠结
半天,终于找到是
nginx的client_max_body_size配置选项值造成的413错误。现在分享一下处理方法。
问题说明:
php.ini配置文件中upload_max_filesize设置为50M
post_max_size设置的值为100M
但是上传超过10兆的文件就会返回uploaderror 413错误。
服务器环境:
centos5.7 32位
nginx1.0.8
php5.2.17
解决方法:
1、如果你上传文件限制为50兆,则先修改php.ini upload_max_filesize 50M
post_max_size 100M 2、然后修改nginx配置文件中:
这个配置选项值默认是1m,可以增加到8m以增加提高文件大小限制,我这里直接修改为100了,具体情况可根据自己的需求设置。(参
考:client_max_body_size大小要和php.ini中的upload_max_filesize、post_max_size中的最大
值一致或者稍大,这样就不会因为提交数据大小不一致出现的错误。)
client_max_body_size 100m;
ps:本次遇到的问题只觉得是php.ini配置文件的事了,变个思路,从大体环境考虑一下
问题总会解决,nginx的配置还是需要认真测试的。