在使用WordPress搭建网站时,许多用户可能会遇到上传文件大小受限的问题,无论是上传主题、插件、图片,还是媒体文件,系统可能会提示“上传的文件超过了php.ini中定义的upload_max_filesize”或类似错误,这通常是由于服务器配置限制了PHP脚本可以处理的最大文件大小,本文将详细介绍如何解决WordPress上传文件大小限制问题,包括通过修改php.ini、.htaccess、wp-config.php,以及使用插件和联系主机提供商等方法。
为什么会出现上传文件大小限制?
WordPress本身并没有直接限制上传文件的大小,但它的上传功能依赖于PHP和Web服务器(如Apache或Nginx)的配置,默认情况下,大多数共享主机环境会设置较低的文件上传限制,常见的限制包括:
upload_max_filesize(PHP允许上传的单个文件最大大小)post_max_size(PHP允许通过POST方法提交的最大数据量,通常应大于upload_max_filesize)memory_limit(PHP脚本可用的最大内存)max_execution_time(PHP脚本的最大执行时间,影响大文件上传)
如果这些值设置过低,WordPress就无法上传较大的文件。
如何检查当前的上传限制?
在尝试修改任何设置之前,最好先检查当前的上传限制,你可以通过以下方法查看:
方法1:使用WordPress后台
- 登录WordPress后台。
- 安装并激活 "Health Check & Troubleshooting" 插件。
- 在左侧菜单中进入 "Tools" > "Site Health"。
- 在 "Info" 选项卡下,找到 "Server" 部分,查看
upload_max_filesize、post_max_size等值。
方法2:创建PHP信息文件
- 在WordPress根目录(通常是
public_html或www)创建一个名为phpinfo.php的文件。 - 添加以下代码:
<?php phpinfo(); ?>
- 访问
https://你的网站.com/phpinfo.php,搜索upload_max_filesize和post_max_size查看当前限制。
解决WordPress上传文件大小限制的几种方法
方法1:修改php.ini文件(推荐)
如果你的主机允许修改php.ini(通常VPS或独立服务器可以),这是最直接的方法。
-
找到php.ini文件:
- 在WordPress根目录(
public_html或www)查找php.ini。 - 如果没有,可以尝试在
wp-admin目录下查找,或者联系主机提供商获取。
- 在WordPress根目录(
-
修改关键参数: 用文本编辑器打开
php.ini,找到并修改以下参数(如果没有,可以手动添加):upload_max_filesize = 64M post_max_size = 128M memory_limit = 256M max_execution_time = 300 max_input_time = 300
upload_max_filesize:单个文件最大上传大小(如64MB)。post_max_size:POST请求最大数据量(应比upload_max_filesize大)。memory_limit:PHP脚本可用内存(建议至少256MB)。max_execution_time和max_input_time:延长脚本执行时间,防止大文件上传超时。
-
保存并上传:
- 保存修改后的
php.ini文件,并上传到服务器(如果修改的是本地文件)。 - 重启Web服务器(如Apache/Nginx)以使更改生效(部分主机可能不需要重启)。
- 保存修改后的
-
测试上传:
回到WordPress后台,尝试上传文件,看看是否仍然报错。
注意:如果你的主机不提供
php.ini修改权限(如某些共享主机),请尝试其他方法。
方法2:修改.htaccess文件(适用于Apache服务器)
如果你的网站运行在Apache服务器上,可以通过修改 .htaccess 文件来调整上传限制。
-
找到.htaccess文件:
- 在WordPress根目录(
public_html或www)下找到.htaccess文件(通常与wp-config.php同级)。
- 在WordPress根目录(
-
添加以下代码: 在文件末尾添加:
php_value upload_max_filesize 64M php_value post_max_size 128M php_value memory_limit 256M php_value max_execution_time 300 php_value max_input_time 300
- 数值可以根据需求调整(如
64M改为100M或更高)。
- 数值可以根据需求调整(如
-
保存并测试:
- 保存
.htaccess文件,然后尝试上传文件。
- 保存
注意:如果修改后网站出现500错误,说明主机不允许通过
.htaccess修改PHP设置,可以尝试其他方法。
方法3:修改wp-config.php文件
如果无法修改 php.ini 或 .htaccess,可以在 wp-config.php 中添加以下代码:
- 打开
wp-config.php(位于WordPress根目录)。 - 在
<?php之后,/* That's all, stop editing! Happy blogging. */之前添加:@ini_set('upload_max_filesize', '64M'); @ini_set('post_max_size', '128M'); @ini_set('memory_limit', '256M'); @ini_set('max_execution_time', '300'); @ini_set('max_input_time', '300'); - 保存文件并测试上传。
注意:这种方法不一定在所有主机上都有效,因为某些主机会覆盖这些设置。
方法4:使用插件(适合新手)
如果你不想手动修改代码,可以使用插件来调整上传限制,
- WP Maximum Execution Time Exceeded(调整执行时间)
- Increase Maximum Upload File Size(直接调整上传限制)
安装并激活插件后,按照插件的说明进行设置。
方法5:联系主机提供商
如果以上方法都无效(常见于共享主机),最好的方法是联系你的主机提供商,要求他们:
- 提高
upload_max_filesize和post_max_size。 - 检查服务器PHP配置是否允许修改。
大多数优质主机(如SiteGround、Bluehost、Kinsta等)都提供自定义PHP配置选项。
| 方法 | 适用情况 | 是否需要技术知识 | 备注 |
|---|---|---|---|
| 修改php.ini | VPS/独立服务器 | 中等 | 最直接有效 |
| 修改.htaccess | Apache服务器 | 低 | 共享主机可能不支持 |
| 修改wp-config.php | 所有主机 | 低 | 可能被主机覆盖 |
| 使用插件 | 新手友好 | 低 | 依赖插件兼容性 |
| 联系主机商 | 共享主机 | 低 | 最可靠但依赖服务商 |
推荐步骤:
- 先检查当前限制(使用Health Check或phpinfo)。
- 尝试修改php.ini或.htaccess(如果可能)。
- 如果不行,修改wp-config.php。
- 最后联系主机提供商。
通过以上方法,你应该能够成功解决WordPress上传文件大小限制问题,顺利上传大文件! 🚀


还没有评论,来说两句吧...