WordPress升级错误: “正在执行例行维护,请一分钟后回来”

怎样解决访问WordPress前台后台一直显示 “正在执行例行维护,请一分钟后回来”?

错误描述:WordPress在后台进行版本、插件主题升级时,会先切换到维护模式,显示 “正在执行例行维护,请一分钟后回来(Briefly unavailable for scheduled maintenance. Check back in a minute)”,如果升级顺利就迅速恢复正常,给访客提供一个很好的体验。但有时升级途中因为某些原因中断,会一直停留在维护模式,访问前台后台都一直显示“正在执行例行维护,请一分钟后回来”。

错误原因:后台升级维护意外中断。

解决办法:

1. FTP登录,删除根目录下的 .maintenance ,即可。

2. 根目录没有 .maintenance的情况,新建一个空的txt文本,上传到FTP根目录,重命名为 .maintenance,即可。

3. 打开 /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 即可。

发表评论

电子邮件地址不会被公开。 必填项已用*标注