上个月下旬,wordpress低调地发布了4.1版本,本着与时俱进的态度,我决定尽早升级,在网站后台点击更新,等待了很久,出现了空白页面,反复折腾了七八次,还是无法升级;上网查找了很多资料,试了很多方法,最好手动升级成功了。
回想这次坎坷的网站升级之路,主要原因可能是中途换过主机环境,一些文件夹权限或服务器配置有过变更,导致升级时程序无法替换文件,让自动升级失败。
为了以后,大家可以从容地面对类似的情况,不再纠结很久再做决定;下面,还是简单罗列一下wordprss自动升级失败的原因及解决方案。
网络问题
现象:点击更新提示,浏览器右下角一直提示连接域名,然后没有然后了。
原因:wordpress的服务器在国外,国内主机去访问,速度有时候不稳定。
处理方案:建议换个时间去更新,实在不行直接选择手动升级。
文件权限问题
现象:点击更新提示,要求输入FTP账号、密码什么的,linux主机较多出现。
原因:出现这个提示,一般是指文件夹没有写入权限;网站程序更换系统环境时,好比从A主机到B主机,文件夹权限可能没有正确传递,很容易出现这种情况。
处理方案:可以直接输入FTP账号、密码;部分VPS或云主机,没有开通过FTP,可以赋予网站目录www用户权限,命令是chown -R www /home/web/wordpress;当然,还可以用winscp等工具登陆ssh,直接鼠标右键修改文件夹权限。
环境配置问题
现象:点击更新提示,看起来在正常更新,过会儿停留在空白页面。
原因:出现这个提示,原因有很多,好比开启了防目录跨站功能。
处理方案:如果是虚拟主机,联系空间商处理;如果是VPS或云主机,可以去主机控制面板或防火墙软件上,暂时取消掉类似的安全设置。
至于怎么取消,要看具体情况,一般是设置php.ini文件,搜索open_basedir,在前面加上#注释掉;部分防火墙软件,也有可能有类似的功能,限制了网站程序目录权限。当然,为了安全,不建议取消防跨站功能,可以通过手动升级来替代。
除开上面几种常见的情况,有时候可能会遇见更奇怪的情况;这个时候,不妨手动升级程序,只要简单五步,即可顺利升级到最新版的wordpress程序。
手动升级wordpress
1、登陆网站后台,暂停正在使用的插件,备份数据库及网站;
2、到wordpress官网下载最新的程序,压缩上传到网站根目录;
3、解压覆盖网站目录下的wp-admin、wp-includes文件夹;
4、解压覆盖根目录下面的其它文件(wp-config.php除外);
5、访问http://域名/wp-admin/upgrade.php升级,按提示操作。
注意事项:注意备份网站和数据库,替换过程中,保留wp-content目录(主题目录,非常重要)、wp-config.php(数据库配置文件,非常重要)、robots.txt(一般重要)、favicon.ico(一般重要)等文件。按这个流程操作,99%可以正常升级;若依然升级失败,可能是数据库或其它配置坏了,建议先默哀,再查找原因。