nginx+php上传大文件限制以及超时修改配置

今天玩wordpress主题,搞了一个比较大的zip包,足足有30M,然后上传的时候就提示我文件大小上限,修改配置之后,又提示我链接过期,其实就是请求时间太长导致超时了

这里,需要修改nginx和php的配置

PHP配置

首先,找到php.ini位置

root@vultr:~# php -i | grep php.ini Configuration File (php.ini) Path => /etc/php/7.2/cli Loaded Configuration File => /etc/php/7.2/cli/php.ini

我执行php -i | grep php.ini之后发现在/etc/php/7.2/cli/php.ini

然后编辑这个文件,修改如下配置

upload_max_filesize 32M post_max_size 32M max_input_time 300 max_execution_time 300

其实就是把上传文件大小搞大,防止超上传上限,执行时间变长,防止超时。

然后,需要重启php-fpm,先查找所有相关进程

root@vultr:~# ps -aux | grep php-fpm root 3910 0.0 1.2 424852 12964 ?        Ss   08:29 0:00 php-fpm: master process (/etc/php/7.2/fpm/php-fpm.conf)
www-data  3970  0.6 11.8 529592 119472 ?       S    08:32   0:10 php-fpm: pool www
www-data  3982  0.5 12.2 531760 123232 ?       S    08:32   0:10 php-fpm: pool www
www-data  3984  0.6 13.5 545176 136540 ?       S    08:32   0:11 php-fpm: pool www
root      4480  0.0  0.1  14728  1028 pts/1 S+   09:01 0:00 grep --color=auto php-fpm

我们找到带master的那一行,这是主进程,最前面的数字是id,kill掉这个id

kill 3910

再执行 ps -aux | grep php-fpm 确认一下 是否全部关闭,现在应该只有一行打印了

root 4480 0.0 0.1 14728 1028 pts/1 S+ 09:01 0:00 grep --color=auto php-fpm

执行php-fpm启动,这里根据每个人安装版本不同,我的是php-fpm7.2,所以命令是

php-fpm7.2

确认自己的命令很简单,只要输入php-fpm然后按tab就会自动补全

另外,为了确保加载的是刚刚修改的配置文件,可以加 -c 参数,后面跟刚刚修改的配置文件路径,比如:

php-fpm7.2 -c /etc/php/7.2/cli/php.ini

如果没有报错,就说明重启成功了

nginx配置

查看nginx配置文件位置

root@vultr:~# nginx -t nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

可以看到,我的配置文件在/etc/nginx/nginx.conf,修改这个文件,找到http,在里面添加配置项或者修改配置项

http { # 修改内容在这里哦 }

修改内容如下:

send_timeout 60; fastcgi_connect_timeout 300; fastcgi_send_timeout 300; fastcgi_read_timeout 300; client_max_body_size 30m; 

重新加载配置

nginx -s reload

总结

至此,就可以上传大文件,也不怕超时了~

本博客所有文章如无特别注明均为原创。作者:小乐复制或转载请以超链接形式注明转自 众众帮
原文地址《nginx+php上传大文件限制以及超时修改配置
分享到:更多

相关推荐

发表评论

路人甲 表情
Ctrl+Enter快速提交

网友评论(0)