WordPress在线升级失败后导致页面空白

WordPress在线升级失败后导致页面空白

1

WordPress 4.7 正式版前几天发布了,今天登录后台提示有新版本,点击「现在更新」后,页面加载一段时间后变空白,再次点击「现在更新」后,提示:另一更新正在进行。

这个问题已经不是第一次遇到了,上一个版本升级的时候也遇到了。那时以为是个偶然问题就没多花心思去找原因,直接下载最新版手动升级了。但这次是第二次遇到了,就没法对它视而不见了。

2

打开 Chrome DevTools 对这个升级过程进行多次分析,发现 update-core.php?action=do-core-upgrade 这个请求每次均在加载30秒左右后停止。说明 WordPress 在发起下载安装包请求后,在30秒后仍未下载完成导致请求连接中断。

解决方法也很简单,无非是以下几种:

  1. 加大带宽
  2. 减小更新包体积
  3. 加大请求响应时间

由于前两种方法适用性不是很广,所以下面的解决方案是针对第三种方法:加大请求响应时间

3

去除提示:另一更新正在进行

WordPress 在执行更新的时候数据库会生成一条记录用于防止同一时间重复更新,因此需要先把这条记录删除后下次才能在线更新。

如果用 SSH 登录服务器操作的话,执行以下命令登录 MySQL :

mysql -uroot -p  //输入 MySQL root 账户密码
WordPress在线升级失败后导致页面空白

选择数据库,找到那条记录并删除,例如我找到的记录 option_id 是40301,那就执行:

use database;    // database 替换为你的 WP 数据库select * from wp_options where option_name like '%lock%';delete from wp_options where option_id = 40301
加大请求响应时间

request_terminate_timeout 是 php-fpm.conf 中的一个参数,用于控制单个请求的超时中止时间,默认值30秒。

通过加大 request_terminate_timeout 的值,就可以彻底解决。执行以下命令修改:

sudo vi /etc/php5/fpm/pool.d/www.conf ;   //通过 vi 编辑你的 php-fpm 配置文件

www.conf 找到 request_terminate_timeout 30s 这一行,值修改为300s

request_terminate_timeout 300s

重启 php5-fpm 后配置生效

sudo service php5-fpm restart

最后点击「现在更新」,耗时3分钟左右终于更新完毕,问题至此解决。

文章链接:https://www.sbkko.com/wordpresszaixianshengjishibaihoudaozhiyemiankongbai.html
文章标题:WordPress在线升级失败后导致页面空白
文章版权:SBKKO 所发布的内容,部分为原创文章,转载请注明来源,网络转载文章如有侵权请联系我们!

给TA打赏
共{{data.count}}人
人已打赏
WP文章

ubuntu16.04下mysql 配置

2016-11-6 19:11:00

WP文章

如何一键部署WordPress

2016-12-14 21:58:00

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索