nginx下设置上传文件大小

1.nginx和php默认不支持上传过大的文件 

  1. 假如我们要求上传的文件大小为20M,默认配置就不允许上传了。 

  2. 下面我们更改nginx和php配置,设定 上传的限制为20M

Nginx配置更改 

  • 如果上传文件时超过了nginx限制,就会返回一个“413 Request Entity Too Large”的错误
  • 我们只要更改nginx的配置文件“nginx.conf”即可
  • 在http{}中添加一个client_max_body_size 20m;配置项;

修改完之后重启nginx或reload配置

PHP配置更改

  1. 除了nginx对文件大小有要求,php也做了限制
  2. php配置文件php.ini
  3. 我们需要修改配置:
  • 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稍大一些 

你可能感兴趣的:(php,linux,nginx)