- WordPress在升级程序、主题、插件时,都会先切换到维护模式,也就是显示 “正在执行例行维护,请一分钟后回来(Briefly unavailable for scheduled maintenance. Check back in a minute)”,如果升级顺利,也就几秒左右就恢复正常;但是如果由于网速不佳等原因导致升级中断,WordPress就会一直停留在维护模式,不论前台还是后台,都一直显示“正在执行例行维护,请一分钟后回来“。
更新wordpress插件后网站打不开了,首页提示Briefly unavailable for scheduled maintenance. Check back in a minute.百度了相关资料了解到maintenance是一个维护页面提示而不是错误,所以我们不用太担心。那为什么会出现这个页面呢?
Briefly unavailable for scheduled maintenance. Check back in a minute.
中文意思是:暂时无法进行定期维护。 请过一会再回来查看。
我们知道wordpress在更新时会下载文件、解压文件、安装文件,在这个过程中wordpress会自动添加刚刚那个提示,并且在网站根目录新增一个.maintenance文件。如果一切更新顺利完成wordpress会自动删除.maintenance文件,但是当你的服务器反应很慢或者内存不足时会出现超时,wordpress就无法做出相应的动作,那个维护提示也会一直出现。
那么要如何修复wordpress维护模式错误提示呢?上面我们知道了出现维护模式的原理,现在就变得简单了,我们只要把网站根目录的.maintenance文件手动删除就可以解决问题了。
再次刷新网站,看看是不是正常了?
如果还是不行,或者你想让它以后可以显示 .maintenance ,那就打开 /wp-admin/includes/class-wp-filesystem-direct.php
找到下面的代码:
function mkdir($path, $chmod = false, $chown = false, $chgrp = false) {
// safe mode fails with a trailing slash under certain PHP versions.
$path = untrailingslashit($path);
if ( empty($path) )
return false;
if ( ! $chmod )
$chmod = FS_CHMOD_DIR;
if ( ! @mkdir($path) )
return false;
$this->chmod($path, $chmod);
if ( $chown )
$this->chown($path, $chown);
if ( $chgrp )
$this->chgrp($path, $chgrp);
return true;
}
将其改为:
function mkdir($path, $chmod = false, $chown = false, $chgrp = false) {
// safe mode fails with a trailing slash under certain PHP versions.
if ( ! $chmod )
$chmod = $this->permission;
if(ini_get('safe_mode') && substr($path, -1) == '/')
{
$path = substr($path, 0, -1);
}
if ( ! @mkdir($path) )
return false;
$this->chmod($path, $chmod);
if ( $chown )
$this->chown($path, $chown);
if ( $chgrp )
$this->chgrp($path, $chgrp);
return true;
}
然后刷新FTP目录,是不是看到.maintenance了,删除它吧!