跳至正文

修改PHP+wordpress+nginx文件上传大小限制

wordpress上传文件大小限制是由php决定的,所以只要修改php的大小限制就可以了

查看phpinfo找到php.ini文件位置

查看phpinfo
upload_max_filesize(最大上传文件大小)
post_max_size(POST数据最大字节长度)
max_execution_time(最大执行时间,单位秒)

在php.ini文件里面找到对应的值进行修改

例子:

注意,如果启用了内存限制,请务必修改memory_limit的值,必须大于最大大小的值,另外,也可以适当修改下max_input_time的值(128+60y一般够用,可以不进行修改)

重启php服务
service php-fpm restart

service php7.4-fpm restart
出现错误可以通过路径/etc/init.d/查看具体php服务名称

修改后的配置

如果媒体库上传大于2m的文件仍然报错,则还需要修改nginx的报文大小限制

# HTTPS server
server {
    listen       443 ssl http2 ;
    server_name  www.tielemao.com;
    charset utf-8;
    root /www/wordpress;
    index index.php index.html;
    client_max_body_size 5m; # 添加此行,允许请求体大小最大不超过5m
可以选择在http{ }中设置:client_max_body_size   20m;
也可以选择在server{ }中设置:client_max_body_size   20m;
还可以选择在location{ }中设置:client_max_body_size   20m;

三者到区别是:http{} 中控制着所有nginx收到的请求。而报文大小限制设置在server{}中,则控制该server收到的请求报文大小,同理,如果配置在location中,则报文大小限制,只对匹配了location 路由规则的请求生效。

http{
#控制全局nginx所有请求报文大小
#client_max_body_size   20m;
    server{
    #控制该server的所有请求报文大小
    #client_max_body_size   20m;
        location a {
        }
        location b{
        #控制满足该路由规则的请求报文大小
        #client_max_body_size   20m;
        }
    }
}

发表回复