$_FILES['file']['error']报错信息说明:
值:0; 没有错误发生,文件上传成功。
值:1; 上传的文件超过了 php.ini 中 upload_max_filesize 选项限制的值。
值:2; 上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值。
值:3; 文件只有部分被上传。
值:4; 没有文件被上传。
查看php.ini 文件位置
方法1: <? phpinfo(); ?> => Loaded Configuration File //web 方式php.ini 位置
方法2: php -i | grep php.ini //命令行php.ini 位置
strace 方式查找php加载配置文件的顺序 搜索fopen 或者php.ini
strace /usr/local/php7/sbin/php-fpm -i 2>1.log
strace /usr/local/php7/bin/php -i 2>1.log
https://www.php.cn/php-weizijiaocheng-394752.html
Nginx配置更改
如果上传文件时超过了nginx的限制,就会返回一个“413 Request Entity Too Large”的错误。
我们只要更改nginx的配置文件“nginx.conf”即可。
在http{}中添加一个client_max_body_size 20m;配置项;
修改完成之后重启nginx或reload配置。
PHP配置更改
除了nginx对文件大小有要求,php也做了限制。
php的配置文件为php.ini。
我们需要修改下面的配置:
file_uploads = On ;打开文件上传选项
upload_max_filesize = 20M ;上传文件上限
post_max_size = 20M ;post上限