记文件上传报错问题排查

当时是post方式上传一个24m的文件,报了这个错误 nginx 413 Request Entity Too Large,Google查询了一下,大致是由于上传文件大小限制的原因。于是首先想到修改PHP.ini文件中的配置项:

post_max_size = 30m
upload_max_filesize = 30m

重启服务器。问题依旧存在,说明问题不在于php.ini。

于是,接下来查看nginx本身的配置。经查:

client_max_body_size

需要在nginx的主配置文件/etc/nginx/nginx.conf中配置即可

http {
 ### Basic Settings##
 sendfile on;
 tcp_nopush on;
 tcp_nodelay on;
 keepalive_timeout 65;
 types_hash_max_size 2048;
 client_max_body_size 30m;
 ...

重启nginx

cd /usr/local/nginx/sbin
./nginx -s reload
或
service nginx reload

另外:还有一种情况是,文件只上传了一部分,这时出现的问题是tmp_name, type等信息为空,也可能是这个原因导致的。

你可能感兴趣的:(后端开发,nginx)