之前给wordpress换了服务器之后发现上传文件突然有大小限制了,其实这个大小限制并不是wordpress本身决定的,而是由php和nginx(我使用的nginx作为web服务器)的配置决定的。
首先弄个phpinfo,在web服务器目录下新建一个文本文件,写入以下内容:
<?php echo phpinfo();
保存为phpinfo.php,然后在浏览器访问这个文件即可看见phpinfo,CTRL+F搜索“Loaded Configuration File”找到php-fpm的配置文件位置,我这里是“/etc/php/7.3/fpm/php.ini”。
打开这个文件,修改两个参数的值:
upload_max_filesize=1024M post_max_size=1024M
cd进入/etc/init.d/文件夹,找到类似php-fpm的文件,然后用这个文件重启php:
/etc/init.d/php7.3-fpm restart
做到这一步,wordpress就会显示允许上传1G大小的文件了,但是它会在文件传输结束以后报错“从服务器收到预料之外的响应。此文件可能已被成功上传。请检查媒体库或刷新本页。”,这是因为nginx还限制了请求体大小,需要在nginx的虚拟机配置文件中添加:
client_max_body_size 50m;
重启nginx:
service nginx restart