WordPress 搬家方法总结:迁移主机和更换域名,一次性解决你的难题!

前言

前WordPress 作为全球最流行的博客系统,使用简单,功能丰富,用它来建站的用户非常多。对于站长们来说,网站搬家也是少不了的,有时我们需要更换主机空间,把网站从一个服务器迁移到另一个服务器上,或者更换域名。

本文就详细介绍下 WordPress 网站搬家的几种方法,我们可以通过手动备份搬家,也可以使用插件工具一键完成网站迁移。还是很简单的。

准备

WordPress 网站搬家分两种情况,更换域名和不更换域名。搬家过程相同,更换域名的话需要多一步域名替换的操作。

注意:搬家前一定要备份网站文件和数据库,搬家过程中如果出现问题也好恢复!

下面分为两种方法进行介绍:插件法和手动法,插件法更简单,手动法更通用;更换域名的方法单独写在最后,可以独立使用。

方法一、使用 WordPress 搬家插件迁移网站

推荐使用 All-in-One WP Migration 搬家插件,直接打包全站数据一键迁移,非常方便。免费版只支持512M。

# 1. 导出网站文件

登陆 WordPress 后台,搜索并安装插件 All-in-One WP Migration。

启用后从左边栏进入该插件 -> 导出站点 -> 导出到文件。(高级选项默认或按需要勾选)

等待文件打包完成,下载到本地。得到一个后缀名为 .wpress 的文件。

# 2. 导入网站文件到新主机空间

您首先需要在宝塔面板或其他环境中,将域名解析到新主机空间。在新主机空间上安装好 WordPress,进入后台安装 All-in-One WP Migration。本文最后会分享解除上传大小限制的开心版。

导入刚刚下载到本地的网站文件进行恢复。

导入需要一定时间,耐心等待。导入后会询问是否覆盖文件,确定。然后修改固定链接设置并保存两次。

使用此插件可能遇到的问题如下,而且请注意,如果你的导入文件高于50M 请都按下面执行一遍,并重启PHP和Nginx。

1、确保PHP上传限制大于演示站数据包。若您使用的是宝塔面板可至PHP设置中找到上传限制(建议将PHP上传限制设置≥512MB)
2、若您使用的是Nginx Web服务器,确保上传限制大于演示站数据包。若您使用的是宝塔面板可至Nginx设置中找到配置修改→client_max_body_size调整上传限制(建议将Nginx上传限制设置≥512MB)
3、若您使用的虚拟主机,可至虚拟主机后台设置面板设置或直接联系虚拟主机提供商为您提供相应协助;
4、若以上方法都不能解决,您可进入FTP将演示站数据包手动上传至/wp-content/ai1wm-backups/ai1wm-backups,随后在All-in-One WP Migration插件中找到Backups(备份)菜单,这时会显示您刚刚上传的文件,该备份文件的右侧有三个选项,下载,恢复网站,删除,我们这里点击第二个选项,Restore网站,然后就进入到恢复网站的进程中了,剩下的就按照备份的教程进行就可以了。

 

方法二、WordPress 手动搬家

进入原网站服务器/主机后台,打包下载网站根目录下的所有文件到本地。

进入 phpMyAdmin,选择网站数据库,导出 sql 文件到本地。

# 2. 上传网站文件和导入数据库

上传网站文件到新主机的网站目录并解压。

在 phpMyAdmin 中创建一个新数据库,并导入上面的网站数据库 sql 文件。

# 3. 修改 wp-config.php

编辑 wp-config.php 文件,修改数据库名称、用户名、密码,连接新主机(很关键)

注意一下,MySQL主机这一项默认是’localhost’,如果你的是windows主机,不用修改,如果是Linux主机,可能需要填上数据库的地址。

 
/** WordPress 数据库的名称 */
define(‘DB_NAME’, ‘你的新空间数据库名称’);
/** MySQL 数据库用户名 */
define(‘DB_USER’, ‘你的数据库用户名’);
/** MySQL 数据库密码 */
define(‘DB_PASSWORD’, ‘你的数据库登录密码’);
/** MySQL 主机 */
define(‘DB_HOST’, ‘你的数据库地址’);

将域名解析到新主机空间,进入 WordPress 后台更新固定连接,完成。

WordPress 更换域名的方法

进入 phpMyAdmin,选择网站数据库 -> SQL -> 粘贴下面代码 -> 执行。

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, '旧域名' ,'新域名');

或者使用下面的方法

UPDATE wp_options SET option_value = replace( option_value, 'http://www.dwdh1.cf', 'http://www.dwdh2.cf' ) WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wp_posts SET post_content = replace( post_content, 'http://www.old.com', 'http://www.dwdh2.cf' ) ;
UPDATE wp_posts SET guid = replace( guid, 'http://www.dwdh1.cf', 'http://www.dwdh2.cf' ) ;

dwdh1代表旧域名、dwdh2代表新域名,将上面的执行语句修改为你们自己的,然后点击执行即可!

Tips

  • 搬家前一定要先备份!备份!备份!
  • All-in-One WP Migration 免费版只支持导入 512M 以内的文件;
  • 网站搬家完成后记得更新固定链接,设置 -> 固定链接 -> 保存;
  • 搬家前可以先清理下网站里的冗余内容,比如废弃的插件、站内备份文件等,减小网站体积。

结语

WordPress 网站搬家还是很简单的,得益于丰富的插件生态,各种搬家、备份插件也很多,可以按安装量排序选择。

如果网站文件不大的话,建议使用插件,方便省事;如果文件较大,那插件导入可能会有点慢,手动上传或许更快些。

All-in-One WP Migration

下载基础版地址

https://zhuanlan.zhihu.com/p/50803437

发表回复