对于许多使用 WordPress 建站的站长来说,“自动更新” 简直是一个让人又爱又恨的功能。虽然它能带来最新的安全补丁,但往往也会带来灾难:一觉醒来,WordPress 核心程序自己升级了,导致原本完美运行的主题或插件瞬间报错,甚至整个网站直接白屏宕机。
许多站长在发现有更新提示时,会匆忙去修改配置文件试图阻止,却绝望地发现:“手速太慢,代码还没保存,后台就已经自动更新完了!”
如果你也遇到了这种“防不胜防”的情况,或者刚建好新站想要彻底锁死当前版本。今天这篇教程,教你如何通过宝塔面板,从代码层到服务器权限层,彻底封死 WordPress 的自动更新(文末附赠不小心升级后的降级挽救方法)。
坑前言:为什么你加了禁用代码却不生效?
很多站长在网上找了禁用更新的代码,粘贴进去后发现 WordPress 依然我行我素地更新了。这通常有两个原因:
- 时间差错觉:WordPress 后台的定时任务(Cron)在你想起要去修改文件的那一刻,其实已经被触发并开始在后台执行了。
- 代码位置放错了(90%的人错在这里):在 wp-config.php 中添加代码,必须放在
require_once ABSPATH . 'wp-settings.php';这行代码的上面。放在底部或这行代码之后是绝对无效的。
了解了原理,我们直接上实操。
第一重防线:常规禁用(推荐)
这是最基础也是最常用的方法,通过修改配置文件来告诉 WordPress 停止更新。
操作步骤:
- 登录宝塔面板,点击左侧菜单的 “网站”。
- 找到你的站点,点击右侧的 “根目录” 进入文件管理器。
- 找到 wp-config.php 文件,强烈建议先备份一份,然后双击编辑。
- 向下滚动,找到
/* That's all, stop editing! Happy publishing. */这行注释。 - 在这行注释的上方,添加以下代码:
// 彻底禁用所有自动更新(包含核心、插件、主题)
define( 'AUTOMATIC_UPDATER_DISABLED', true );
// 禁用核心程序的自动更新
define( 'WP_AUTO_UPDATE_CORE', false );点击保存,即可生效。
第二重防线:终极锁死(最高安全级别)
如果你觉得第一种方法还不够放心,或者你的网站已经彻底完工,不需要再在后台安装任何新插件和主题,你可以开启“终极锁死模式”。
在 wp-config.php 刚才的位置,再追加一行终极代码:
// 禁止在 WordPress 后台安装、更新、修改任何插件、主题和核心文件
define( 'DISALLOW_FILE_MODS', true );注意: 添加这行代码后,你不仅禁用了自动更新,WordPress 后台的“安装插件”、“安装主题”按钮也会直接消失。未来如果你需要增加插件,只能通过宝塔面板手动上传压缩包到插件目录。这种方法对防黑客篡改文件也有奇效。
第三重防线:宝塔面板“降维打击”(物理锁死)
如果你不想改代码,或者 WordPress 的定时任务实在太顽固,我们可以直接利用宝塔面板的 Linux 文件权限机制,给 WordPress 来个“釜底抽薪”——没收它的文件修改权限。
操作步骤:
- 在宝塔面板进入网站根目录。
- 勾选全选所有文件和文件夹(尤其是 wp-admin 和 wp-includes)。
- 右键点击,选择 “权限”。
- 将默认的 755 权限修改为 555(即取消“写入”权限),所有者保持 www,点击确定。
原理: 此时,哪怕 WordPress 自动更新程序启动了,当它试图替换新版本文件时,服务器操作系统会直接拦截并提示“无权写入”,更新自然彻底失败。
(注:当你自己需要修改网站文件或上传图片时,记得去宝塔里把对应文件夹的权限改回 755 即可。)
补救福利:手速太慢已经更新了,怎么退回旧版本?
如果你的网站已经被迫升级了,导致主题不兼容,千万别慌,无需重装网站,只需要用一个插件就能轻松“时光倒流”。
- 登录 WordPress 后台(如果刚才加了
DISALLOW_FILE_MODS代码,请先删掉它恢复安装插件的权限)。 - 在插件市场搜索并安装 WP Downgrade 插件。
- 启用后,进入 设置 -> WP Downgrade。
- 在 WordPress Target Version 中,准确填入你之前使用的旧版本号(例如:6.2.2)。
- 点击保存,然后点击页面下方出现的 Up-/Downgrade Core 按钮。
- 系统会引导你重新覆盖安装该旧版本,一路确认即可。此操作只会降级核心文件,你的文章、图片和数据库数据毫发无损。
写在最后
禁用自动更新是为了保证业务的稳定连续性,但这并不意味着你可以永远不更新网站。长期不更新的 WordPress 极易成为黑客的肉鸡。正确的做法是:禁用自动更新,定期在本地或测试环境测试新版本兼容性后,再手动进行全站备份与升级。
希望这篇文章能帮你彻底解决 WordPress 自动更新的烦恼!
作者:霍欣标,如若转载,请注明出处:https://www.bigengwu.cn/shu/400.html