增加 WordPress 上传附件大小尺寸的限制

对于 WordPress 来说,可以上传的附件尺寸大小主要受到了 PHP 和 Nginx 的影响。

我们知道,PHP 服务器的主要设置一般都在 php.ini 文件里面,想要增大 PHP 允许上传的最大附件尺寸,我们首先需要找到 php.ini 的位置,然后编辑这个文件里面对应的设置项。

1、找到 php.ini 文件

查看自己php默认配置文件位置,也就是php.ini的位置,在www根目录新建一个info.php的文件,代码如下

<?php
echo phpinfo();
?>

查看自己php配置路径

找到本机php Configuration File路径为/etc/php/7.4/fpm/php.ini

2、使用您喜欢的编辑器编辑这个文件,修改或加入以下设置。

upload_max_filesize = 128M
post_max_size = 128M
memory_limit 256M
max_execution_time 300
max_input_time 300

这些设置项都有各自的作用。

  • upload_max_filesize: 最大上传尺寸
  • post_max_size: POST 请求最大尺寸
  • memory_limit: PHP 进程可以使用的内存限制
  • max_execution_time:PHP 程序的最大执行时间
  • max_input_time:最大输入时间

其中影响最大上传尺寸的设置项是 upload_max_filesize 和 post_max_size,其他几个选项主要是为了防止上传程序使用过多的内存和因为网络原因造成的执行时间过长。

取消 Nginx 对发送文件的尺寸限制

PHP 设置完了之后,我们发现,上传界面中最大上传文件的尺寸变大了,可是当我们上传大尺寸附件的时候,会出现「上传附件时出现错误」的提示,这是因为 Nginx 对请求 body 的尺寸有限制,在 Nginx 的 http 配置中,我们同样调大这个配置就可以了。

http {
client_max_body_size 128m;
}

3、重启nginx和php服务,使配置生效

systemctl     restart     nginx php7.4-fpm