nginx下如何设置上传文件大小
作者:喵小师
这篇文章主要介绍了nginx下如何设置上传文件大小问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
1.nginx和php默认不支持上传过大的文件
- 假如我们要求上传的文件大小为20M,默认配置就不允许上传了。
- 下面我们更改nginx和php配置,设定 上传的限制为20M
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 = 20; post上限
还需要根据实际情况调整下面的选项
- max_execution_time = 180; 脚本最大执行时间(秒),过短会导致文件还没上传完脚本就停止了
- max_input_time = 180; 请求最大传输时间,过短会导致文件还没上传完传输就停止了
- memory_limit = 128M; 内存上限
修改完成后重启php-fpm或reload配置
2.如果不知道nginx和php配置文件所在位置
请先用下面的指令查找一下
# locate nginx.conf # locate php.ini
一般来说,post_max_size设置要比upload_max_filesize稍大一些
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。