如何修改WordPress最大上传文件大小限制?
网上找了一堆的修改 WordPress 最大上传文件大小限制文章,有些说需要联系 vps 或站点托管管理员修改,最后发现只要在 wordpress 主目录修改添加或修改.user.ini 最有效。无论你的 web 服务器是 nginx 还是 apache 都有效。而且还有以下优势
- 无需重启服务:修改后自动检测,适合快速调试。
- 隔离性:不影响同一服务器上的其他站点。
- 兼容性:适用于大多数 PHP 环境和 Web 服务器。
如何修改 wordpress upload_max_filesize?
在 WordPress 根目录创建或修改 .user.ini 文件,内容如下:
1 |
|
安全风险:恶意用户可能利用 .user.ini 的 auto_prepend_file 或 auto_append_file 植入后门。
文件锁定:某些服务器可能通过 chattr +i .user.ini 防止篡改。
这里为什么也要同时这是 post_max_size,因为 post_max_size 的上限也限制了 upload_max_filesize, 如果只是单纯的修改 upload_max_filesize 的值,而忽略了遗落在系统某个位置 post_max_size 值也会导致 upload_max_filesize 的设置不生效, 所以最好两个值放置在一起设置。
与其他配置方式的对比
.user.ini 文件的支持是从 PHP 5.3.0 版本开始引入的, 一个较老的 php 版本, 所以无需太担心 php 版本的问题。当然最推荐的是通过 .user.ini 来配置 upload_max_filesize, 但是一些其他配置方式我们也需要做一些了解, 以做到心中有数。
配置方式 | 权限层级 | 生效范围 | 限制 |
---|---|---|---|
**php.ini** | 系统级 | 全局所有站点 | 需服务器权限,重启服务生效 |
**.user.ini** | 目录级 | 当前目录及子目录 | 需 PHP 支持,部分参数可覆盖 |
**.htaccess** | 目录级 | 仅 Apache + mod_php | Nginx 无效,可能被主机商禁用 |
**ini_set()** | 脚本级 | 当前请求 | 无法修改 PHP_INI_SYSTEM 参数 |
php.ini 通常位于 /etc/php.ini
参考文档
如何修改WordPress最大上传文件大小限制?
https://pengtech.net/wordpress/wordpress-maximum-upload-size.html