Ⅰ.备份

1.网站文件备份

网站文件目录打包备份,可以直接scp拷贝到目标服务器,目录和原服务器的路径要一致,不然打开网页会如下报错。

Fatal error: Unknown: Failed opening required '/****/****/wordfence-waf.php' (include_path='.:/usr/local/php/lib/php') in Unknown on line 0

2.数据库备份

利用数据库工具导出数据库结构和数据。

Ⅱ.重新部署

1.网站文件部署

文件目录与原服务器目录一定要一致,编辑wp-config.php文件修改里面的数据库设置项。如果用了缓存插件,把缓存删除,如wp-content/cache/文件夹。

2.数据库导入

建库导入之前生成的脚本,如果域名换掉了,记得执行下面的语句。

UPDATE wp_options SET option_value = REPLACE(option_value, '旧域名', '新域名') WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wp_posts SET post_content = REPLACE(post_content, '旧域名' , '新域名');
UPDATE wp_posts SET guid = REPLACE(guid, '旧域名' ,'新域名');

Ⅲ.遇到的坑

  1. 安装wordpress的时候碰到无法连接数据库的情况,重新创建数据库也不行,数据库工具连接一切正常,最后才发现用户的默认登录验证方式为caching_sha2_password,由于我重新安装了服务器,装上了最新的MySQL8.0版本,默认的plugin是 caching_sha2_password ,wordpress居然不支持这种plugin,于是改成mysql_native_password。
    alter user 'wordpress'@'%' identified with mysql_native_password by 'password';
  2. wordpress网站文件夹拷入目标服务器之后,打不开页面。这都是由于wordpress目录与原服务器中的目录不一致导致的,修改为一致就行了,目前不知道怎么修改才能自定义目录,试过修改wordfence-waf.php中的配置,但还是报错,遂弃。
  3. 网站貌似能打开了,但是页面有点问题,链接是上一个域名的链接,原来是数据库的数据没有修改,照上面的方法更新数据库数据就行了。