将WordPress 4.7.3升级到PHP 7.1,解决WP Super Cache兼容性

前段时间更换VPS,从坑爹的AcrosVM切换到了Vultr,价格基本不变,Vultr的网络和IO都非常满意。但是在重新搭建LNMP时,发现PHP和MariaDB都有了新的版本,我当时还用着PHP 5.5,据说PHP 7速度大幅度提升,作为一个长时间被机器性能拖累的博客主,自然想靠这点性能提升来减少页面加载的时间。所以最后的环境是MariaDB 5.5搭配PHP 7.1,安装完之后,感觉WordPress从未如此迅速,而打开Opcache和Redis缓存系统之后,在美国西海岸的网站访问速度已经可以媲美阿里云了。不过,从PHP 5.5直接升级到PHP 7.1还是遇到了不少雷,这里就简单的说一说吧。

首先,在升级PHP之前,请务必务必把你的WordPress升级到最新版,因为最新版的Wordpress已经完全支持PHP 7了,官方WordPress.com已经迁移到了PHP 7,而老版直接升级,有很大可能性造成不兼容的情况。其次,是备份WordPress,而且建议停用所有插件之后再备份打包下载,然后上传到新VPS上。第三,在新VPS上配置好网站之后,将wp-config.php文件里Debug的参数从false改为true。然后,一个一个地启用插件,查看Debug查错信息。一般来说,较老的插件使用的一些函数在PHP 7中已经被替换,所以会有一定的问题,这种情况,可以尽量找同类插件代替,或者手动修改代码,替换为新函数。

基本上通过上述方法,就能够解决WordPress与PHP 7的大部分兼容性问题,但是对于WP Super Cache这个王牌缓存插件,似乎并不起作用。一开始我是以为这个插件存在函数冲突,后来删除再重装之后,发现错误信息已经不存在了,所以应该不是插件本身的问题,而是部分设置与缓存文件的问题,删除重装并重新配置,就能让WP Super Cache重新工作,在这里,再次推荐使用Redis或者Opcache对象缓存,速度将会有显著提高。

3 Comments

    1. 我选择的是美国机房,日本机房也是从美国机房中转的,因此并没有更快

      AcrosVM本身就是Hostigation旗下的,期间貌似卖过一次身,不知道这次是不是收回来了,反正Acros服务稀烂,Hostigation稳定,但是之前不提供中国线路优化和中文客服

发表评论