WordPress--解决上传的文件尺寸超过php.ini的问题

原文网址:WordPress--解决上传的文件尺寸超过php.ini的问题_IT利刃出鞘的博客-CSDN博客

简介

本文介绍如何增大WordPress上传文件的大小。

Wordpress默认上传文件的大小是2m,上传主题时会报错:“上传的文件尺寸超过php.ini中定义的upload_max_filesize值”,所以需要配置php的上传文件大小的限制。

一般只修改upload_max_filesize即可,但有时也需要修改post_max_size。

建议:在上传完主题之后,再改回2M。

Java星球:way2j.com

法1:修改.htaccess文件

.htaccess文件的位置:在根目录下(wp-admin同级目录)。本处是:wordpress/map_dir/html/

php_value upload_max_filesize 300M
php_value post_max_size 300M
php_value memory_limit 256M
php_value max_execution_time 300
php_value max_input_time 300

法2:修改wp-config.php文件

wp-config.php文件的位置:在根目录下(wp-admin同级目录)。本处是:wordpress/map_dir/html/

@ini_set( 'upload_max_filesize' , '300M' );
@ini_set( 'post_max_size', '300M');
@ini_set( 'memory_limit', '256M' );
@ini_set( 'max_execution_time', '300' );
@ini_set( 'max_input_time', '300' );

法3:使用插件(不推荐)

不推荐的原因:使用此插件,然后使用All-In-One Migration导入的话,会一直卡在“检查扩展的兼容性”,无法导入成功。

可以安装插件:Big File Uploads

插件=> 已安装插件=> 找到此插件=> Settings

也可以按角色区分上传文件的大小:

<think>好的,我现在需要解决用户在Docker环境下修改WordPressphp.ini配置来增加upload_max_filesize值的问题。用户已经尝试过多种方法,但一直遇到上传文件大小超过限制的错误提示,而且提到之前的方法可能不安全,特别是在php-cgi被封装的情况下。我需要仔细思考如何正确地在Docker环境中调整这个配置。 首先,用户的问题是关于Docker中的WordPress,所以需要了解Docker容器里PHP的配置位置。通常,PHP的配置文件php.ini可能位于/etc/php/版本号/cli/或/etc/php/版本号/fpm/下,具体取决于PHP的运行方式。如果是通过PHP-FPM运行,可能需要修改fpm目录下的php.ini。但Docker容器默认可能没有安装编辑器,或者配置会被容器重建覆盖,所以直接进入容器修改可能不是持久化的解决方案。 接下来,用户提到之前的方法不安全,比如修改封装过的php-cgi脚本。因此,我需要推荐更可靠的方法,例如在Dockerfile中自定义配置,或者在运行容器时挂载自定义的php.ini文件。这样即使容器重启,配置也会保留。 另外,可能需要同时调整upload_max_filesize和post_max_size,因为后者必须至少和前者一样大。否则,即使upload_max_filesize增加了,还是可能被post_max_size限制。 然后,检查用户是否使用了官方的WordPress镜像,因为不同的镜像可能有不同的配置方式。例如,官方镜像可能允许通过环境变量来设置PHP参数,或者需要将自定义的php.ini文件挂载到正确的位置。 可能的步骤包括:创建自定义的php.ini文件,设置upload_max_filesize和post_max_size的值,然后在运行Docker容器时,通过-v参数将自定义的php.ini挂载到容器内的对应路径。例如,挂载到/usr/local/etc/php/conf.d/uploads.ini,因为PHP会读取conf.d目录下的所有ini文件。 此外,还要确保PHP-FPM或Apache服务在容器中重新加载配置,可能需要重启容器或服务,但Docker容器重启后挂载的文件仍然存在,所以这是持久化的方法。 最后,验证修改是否生效,可以通过在WordPress上传文件测试,或者创建一个phpinfo.php页面查看当前的配置值。 总结一下,解决方案应该是通过挂载自定义的ini文件到容器的PHP配置目录,同时设置正确的参数,并确保容器重启后配置仍然有效。这样既避免了直接修改容器内部文件的不便,也确保了配置的持久性和安全性。</think>在Docker环境中修改WordPress的`php.ini`配置以调整上传限制,需要通过挂载自定义配置文件或修改Docker容器参数实现。以下是具体步骤: ### 方法1: 挂载自定义PHP配置文件 1. **创建自定义配置文件** 新建名为`uploads.ini`的文件,内容为: ```ini upload_max_filesize = 64M post_max_size = 64M ``` 2. **启动容器时挂载配置文件** 在`docker run`命令中添加挂载参数: ```bash docker run -d \ -v /path/to/uploads.ini:/usr/local/etc/php/conf.d/uploads.ini \ --name wordpress \ wordpress:latest ``` 此路径适用于官方WordPress镜像,PHP会加载`conf.d`目录下的所有`.ini`文件[^2]。 --- ### 方法2: 通过Docker环境变量(仅限支持PHP-FPM的镜像) 部分镜像支持直接通过环境变量修改PHP参数: ```bash docker run -d \ -e PHP_UPLOAD_MAX_FILESIZE=64M \ -e PHP_POST_MAX_SIZE=64M \ --name wordpress \ wordpress:php8.1-fpm-alpine ``` --- ### 验证配置是否生效 1. 进入容器执行检查命令: ```bash docker exec -it wordpress php -i | grep max_file ``` 2. 或在WordPress根目录创建`phpinfo.php`文件,通过浏览器访问查看`upload_max_filesize`的值。 --- ### 关键注意事项 1. **双参数同步修改** `post_max_size`必须大于等于`upload_max_filesize`,否则仍会触发错误[^1]。 2. **容器生命周期管理** 若使用Docker Compose,应在`docker-compose.yml`中声明配置挂载: ```yaml volumes: - ./uploads.ini:/usr/local/etc/php/conf.d/uploads.ini ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IT利刃出鞘

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值