• 博客装修之升级wordpress:从2.8.6到4.5.3

    博客很久没有更新了,不管是程序还是文章。博客程序用的是wordpress 2.8.6,那是2009年11月12日发布的,转眼间近7年了,想想还真是一段很长的时间啊。

    最近垃圾评论陡然增多,反垃圾插件太旧了跟不上时代,于是盘算着把长草的博客里里外外装修一番。

    就从博客程序先开始吧。

    参考文档:https://codex.wordpress.org/Upgrading_WordPress_-_Extended_Instructions,里面详细描述了如何升级wordpress,总的来说有以下几个要点:

    1. 备份数据库
    2. 备份当前所有wordpress文件,特别提醒别忘了.htaccess文件
    3. 验证上面两步的备份是可用的
    4. 停用所有插件
    5. 确保前面4步没问题
    6. 下载解压缩新版wordpress
    7. 从备份中拷出下列目录/文件,覆盖新版:wp-config.php、wp-content目录(除了wp-content/cache和wp-content/plugins/widgets目录)、wp-images(如果有的话)、wp-includes/languages/、.htaccess、robots.txt
      上传上面准备好的新文件
    8. 访问wordpress更新程序:你的博客/wp-admin/upgrade.php
    9. 检查.htaccess是否需要更新,一般不需要
    10. 更新插件到新版本
    11. 重新启用插件
    12. 更新wp-config.php的安全秘钥,就是AUTH_KEY那堆配置啦
    13. 再确认wordpress变更是否正常

    里面还有一章,叫“Upgrading Across Multiple Versions”即“跨版本升级”一节,其中提到:

    • wordpress向后兼容
    • 如果要跨好多版本升级,那么建议间隔一个版本来慢慢升级,例如:从2.5开始升级到4.5,那么先升级到2.7,再升级到2.9,再升级到3.1……以此类推
    • wordpress3.7之后有个一键升级(话说之前不是有吗?),支持从3.7直达4.5.3;不过,为了稳妥起见,我还是按照上面第2点的方法,跨版本慢慢升级

    按照wordpress的官方指引,再加上自己的小窍门,我的升级步骤如下。

    备份:

    1. 备份网站
    2. 备份数据库

    准备环境:

    1. 在本地启动Apache+PHP+MySQL环境,创建blog.creke.net的虚拟主机
    2. 更改blog.creke.net的host到127.0.0.1
    3. 恢复blog.creke.net网站和数据库到本地的虚拟主机
    4. 检查本地的环境真的真的没问题

    升级:

    1. 开始跨版本升级,每次都删除所有内容——解压新版——从备份中拷贝自定义内容——访问升级程序
    2. 看看后台是否正常,看看登入环境中前台是否正常,看看未登录环境中前台是否正常,注意用ctrl+F5刷新
      备份升级好的数据库,这个很重要,毕竟wordpress大量依赖数据库
    3. 从步骤1开始重复轮回,直到升级到最新版
    4. 升级了最后一个版本的时候,最后按照https://codex.wordpress.org/Editing_wp-config.php的文档,重新从wp-config-sample.php和旧的wp-config.php对照,编辑一个新的wp-config.php,保证设置的最新
    5. 更新必要的插件

    上线更新:

    1. 在网站上挂升级公告
    2. 查看第一步到现在有没有人留言,有的话注意增量备份留言
    3. 恢复文件和数据库
    4. 下线公告,恢复网站正常访问
    5. 稳定运行一段时间后,使用插件清理文章的草稿等数据

    于是乎,博客程序终于升级到了wordpress新版,旧的主题还能用,归功于wordpress向后兼容的设计哲学。

    当然主题也是要装修的,下次有时间继续吧。