“_su”页面显示“服务器正在运行中”,核心答案是:这通常不是报错,而是WordPress正在后台执行安装、更新或恢复操作,系统主动锁定了前台入口,多数情况下只需等待30秒到60秒即可自动恢复。
服务器正在运行中:这个提示到底在做什么
第一次看到这个界面的站长,十有八九会慌一下,白底黑字,没有任何按钮,页面像死了一样,但实际上这个提示是WordPress在执行关键文件变更操作时的一种保护机制,不是故障,更不是服务器宕机。
出现这个页面的背后,通常对应着以下几种操作:
- 后台手动点击了插件或主题的在线安装、更新操作
- 通过WordPress后台直接编辑了主题的functions.php等核心代码文件
- 使用了某些缓存插件或安全插件,触发了站点维护模式
- 在主机面板(比如宝塔面板)里恢复过网站备份
如果你仔细看浏览器顶部标签栏,能看到一个不停旋转的小图标,这说明后台脚本仍在运行,WordPress在执行这类操作时,会在站点根目录生成一个临时的 .maintenance 文件,只要这个文件存在,前台就会一直显示“服务器正在运行中”。
“服务器正在运行中”一般要等多久
多数情况下,这个过程只需要 30秒到60秒,具体时长取决于你正在执行的操作类型和服务器性能。
- 安装普通插件:通常10到20秒内完成,页面会自动跳转回后台
- 更新WordPress核心版本:可能需要1到3分钟,因为要解压文件、替换核心代码
- 批量更新多个插件:时间会线性拉长,每个插件大约消耗15到30秒
- 在大内存占用环境下恢复备份:如果备份文件较大,时间可能达到5分钟以上
刚才提到,站点根目录下的 .maintenance 文件是控制这个提示的“开关”,无论操作正常结束还是异常中断,只要这个文件还存在,提示就会一直显示,所以当你等待时间明显超出合理范围时,就要考虑手动排查了。
卡在“服务器正在运行中”怎么排查
如果你已经等了超过3分钟,页面依然没有任何变化,那大概率不是正常的等待问题了。
第一步:先等60秒,然后直接刷新页面
不要小看这个动作,后台脚本可能在操作完成的那一刻因为PHP进程未能及时退出,导致 .maintenance 文件没有自动删除,这时候手动刷新一下,运气好就直接恢复正常了。
如果刷新无效,就需要进行下面的手动检查。
通过FTP登录删除维护文件
这是一种最常见也最安全的处理方式。
- 使用FileZilla或宝塔自带的文件管理器,连接到你的服务器根目录
- 找到名为
.maintenance的文件(注意前面有点,是隐藏文件) - 右键删除该文件
- 回到浏览器刷新你的网站
删除这个文件不会对网站数据造成任何负面影响,因为它的作用只是在维护期间临时屏蔽访客访问。
检查WordPress实时日志确认任务是否卡死
如果删除 .maintenance 文件后,刷新页面又立刻出现同样的提示,说明新的维护锁正在被反复生成,这时候需要查看PHP错误日志来判断具体原因。
在宝塔面板中,日志位置一般在:
/www/wwwlogs/站点域名.error.log
常见导致卡死的因素包括:
- 网站后台在更新过程中内存超限(PHP的memory_limit设置过低)
- 部分插件存在不兼容冲突,更新脚本循环报错
- 服务器PHP执行超时时间过短,导致脚本被强制终止但状态未清除
针对内存超限,在 wp-config.php 中加入以下代码可以缓解:
define('WP_MEMORY_LIMIT', '256M');
如果问题反复出现,可以让开发者检查最近的插件变更记录,定位冲突源头之后再做处理。
持续卡住时怎么强制解除这个状态
如果删除文件后问题复现,而且后台也进不去,这时候就需要直接操作数据库了。
- 打开phpMyAdmin,登录你的WordPress数据库
- 找到
wp_options数据表(前缀可能是自定义的) - 搜索
siteurl和home两个字段 - 确认这两个字段的值为你的真实域名地址,而不是临时的IP或调试地址
- 全选所有数据表,执行“优化表”操作,顺便清理锁定记录
另一种更彻底但风险稍高的做法是:停用全部插件,在phpMyAdmin中执行以下SQL语句:
UPDATE wp_options SET option_value = '' WHERE option_name = 'active_plugins';
这会清空插件激活状态,执行后回到网站后台,再逐个启用插件排查,操作前务必备份数据库,这是行业内的基本共识。
常见误判场景:CDN、防盗链和PHP超时
很多站长在处理这个问题时会走弯路,因为“服务器正在运行中”这个提示有几种类似但完全不同的变体。
套了CDN的站点更容易误判原因
如果你用了Cloudflare或酷番云CDN,并且CDN缓存了这条维护消息,那么即使你删除了 .maintenance 文件,访客仍然会看到这个提示。
这种情况下,你不应该反复删除文件,而应:
- 登录CDN控制台,手动清理整站缓存
- 开启CDN的“开发模式”(Development Mode),绕过缓存直接回源
- 如果确认所有操作已经完成,可以在CDN配置中暂时关闭缓存规则,等待30分钟后再开启
图片防盗链开启后的假“服务器运行中”
开启防盗链后,如果引用的资源文件被外部访问阻止,部分主题的加载页面会返回一个空白HTML页面,有些浏览器会把这个空白页渲染成类似“服务器忙碌”的状态。
这个情况只需要检查页面源代码就能分辨:如果源代码能正常显示HTML结构,只是样式文件被拦截,那和WordPress维护模式毫无关系。
PHP超时导致的伪卡死
国内不少虚拟主机环境默认的PHP max_execution_time 只有30秒,如果你更换了较大型的插件或主题,很容易触发超时,行业共识认为,在PHP 7.4以上的环境中,将超时时间设置为 120秒 比较稳妥。
如果你用的是宝塔面板,修改路径为:
宝塔面板→软件商店→PHP→设置→性能调优→max_execution_time
改完后记得重载PHP服务,让配置生效。
虚拟主机和云服务器的最佳处理路径
不同环境下处理这个问题,代价差别不小,这里直接用对比来看会更清晰:
| 环境类型 | 等待时间预期 | 推荐处理动作 |
|---|---|---|
| 共享虚拟主机 | 30秒内完成 | 删除.maintenance文件,必要时联系主机商 |
| 云服务器(简米云ECS/酷番云轻量) | 1分钟内完成 | SSH登录直接删除维护文件模板:rm -f /www/wwwroot/站点目录/.maintenance |
| 本地开发环境(宝塔面板/Docker) | 随时可控 | 直接停掉PHP进程再重启,一键恢复 |
| 高性能云服务器 | 几乎无感知 | 若频繁出现,优先排查对象存储或数据库性能瓶颈 |
体现在价格层面的选择逻辑也很简单:如果你的站点是个
人博客、企业展示站,多数情况一个共享虚拟主机就完全够用了,处理这个问题也在权限范围内;但如果你的网站承载着线上交易、会员系统等关键业务,建议至少在云服务器上部署,把运维主动权拿在自己手里,国内不同地域的数据中心处理这类锁定的逻辑也有所不同,比如华北地域的服务器在高并发下更容易出现PHP进程堆积,等待时间会相对长一些。
“服务器正在运行中”常见的两个误区
反复刷新就能解决问题,无意义的刷新反而会延长锁定时间,因为每次刷新都会触发新的PHP进程请求。
直接在主机面板重置WordPress目录权限,这个操作会把所有目录权限改成默认值,可能导致上传目录、缓存目录异常,反而制造出新的报错。
正确处理这件事的核心能力,其实在于判断当前到底处于哪一步:
- 如果正处于正常更新流程,耐心的等待比重启更可靠
- 如果等待失效,删除
.maintenance文件是最有效的介入手段 - 如果删除文件后问题复现,则属于插件冲突或环境配置问题,按上述数据库方案定位
相关问题解答
Q:删除.maintenance文件会不会导致WordPress更新不完整?
不会导致核心文件缺失,这个文件只是本次更新的“门闩”,删除它不会回滚已完成的文件变更,也不影响数据的完整性,真正影响更新完整性的是PHP脚本执行中断时留下的半截文件,所以更稳妥的流程是:先删除文件,再通过“后台→更新”重新执行一次更新。
Q:站点显示服务器正在运行中但是网站后台能正常访问是什么情况?
这通常意味着 .maintenance文件里写的路径和当前站点域名不一致,或者旧版缓存插件在你更新插件根目录时同步写入了一个残留锁,后台无碍说明数据库和PHP基本健康,只需直接删除 .maintenance 文件并清理一次缓存即可,如果希望以后彻底避免,可以在wp-config.php中关闭自动后台更新:
define('AUTOMATIC_UPDATER_DISABLED', true);
Q:如果网站被挂马后恢复了备份,依然显示服务器正在运行中怎么处理?
先下载网站根目录的 .maintenance 文件,用文本编辑器打开查看内容,正常情况下它只有一行时间戳格式的内容,如果文件内出现了可执行的PHP代码,大概率是挂马时写入的残留,立即删除文件并全站扫描查杀,同时把数据库密码和WordPress的密钥(AUTH_KEY)一并重置。
首发原创文章,作者:王坚,如若转载,请注明出处:https://idctop.com/article/729075.html





