其他分类 · 11 4 月, 2025 0

修改PHP设置增加WordPress最大上传文件大小(含Docker版)

前言

在运营WordPress网站时,我们经常需要上传较大的媒体文件(如图片、视频等),但默认的PHP上传限制(通常为2M-8M)往往不能满足需求。本文将介绍如何通过修改PHP配置来增加最大上传文件大小,包括常规方法和Docker环境的特殊处理方式。

常规PHP环境设置

对于普通PHP环境,只需修改php.ini文件中的以下两个参数:

upload_max_filesize = 128M
post_max_size = 128M

建议保持这两个值相同,且post_max_size不小于upload_max_filesize

Docker容器环境设置

如果你使用Docker运行的WordPress,需要进入容器内部修改配置:

1. 进入Docker容器

首先查看正在运行的容器ID:

docker ps

找到你的WordPress容器ID后,执行以下命令进入容器:

docker exec -it [容器ID] bash

2. 增加PHP配置

创建/usr/local/etc/php/conf.d/uploads.ini,写入上述设置:

upload_max_filesize = 128M
post_max_size = 128M

然后用docker restart [容器ID]重启容器使设置生效。WordPress的官方Docker Image中,PHP启动时会自动加载/usr/local/etc/php/conf.d/目录下的INI设置文件。

那非官方的呢?

别慌,用php --ini命令可以查看当前环境中PHP会载入哪些INI文件。比如官方容器的查看结果如下:

Configuration File (php.ini) Path: /usr/local/etc/php
Loaded Configuration File:         (none)
Scan for additional .ini files in: /usr/local/etc/php/conf.d
Additional .ini files parsed:      /usr/local/etc/php/conf.d/docker-php-ext-bcmath.ini,
/usr/local/etc/php/conf.d/docker-php-ext-exif.ini,
/usr/local/etc/php/conf.d/docker-php-ext-gd.ini,
/usr/local/etc/php/conf.d/docker-php-ext-imagick.ini,
/usr/local/etc/php/conf.d/docker-php-ext-intl.ini,
/usr/local/etc/php/conf.d/docker-php-ext-mysqli.ini,
/usr/local/etc/php/conf.d/docker-php-ext-opcache.ini,
/usr/local/etc/php/conf.d/docker-php-ext-sodium.ini,
/usr/local/etc/php/conf.d/docker-php-ext-zip.ini,
/usr/local/etc/php/conf.d/error-logging.ini,
/usr/local/etc/php/conf.d/opcache-recommended.ini

进而可推知/usr/local/etc/php/conf.d/中的INI文件会被自动载入。其他环境同理。