如何从一个VPS迁移到另一个VPS,并且更换域名。
步骤#01:新域名配置DNS服务器,配置一个A记录指向新的VPS的IP地址。
步骤#02:将旧网站的数据打包,使用宝塔的备份功能。
那么备份的文件哪里去了呢?
备份的文件分为两部分:
1:网站源文件,源代码,HTML,PHP文件一类,这些文件在根目录/www/backup/site里面。
2:备份的数据库文件,位于:根目录/www/backup/database
找到最新的一个备份,然后将这两个文件下载好,上传到新的VPS中。
步骤#03:上传旧网站的备份到新的VPS
可以先在旧的VPS中将网站文件和数据库文件下载到本地,然后上传到新的VPS。但是如果VPS在国外,比如在美国的话,下载速度可能比较快,但上传你就会比较慢。
这个时候,我们就可以使用一个新的指令wget,直接从VPS到VPS的复制。
例如:
wget https://ensky.tech/wordpress-3.1-zh_CN.zip
我们只需要将我们要复制的文件放到网站的根目录去,就可以这样复制了。比如我的备份文件是wordpress-3.1-zh_CN.zip,然后我的网站是ensky.tech。那么将wordpress-3.1-zh_CN.zip文件复制到网站的根目录中,就可以直接使用wget https://ensky.tech/wordpress-3.1-zh_CN.zip来复制文件了。
步骤#04:宝塔后台创建新的网站
就像创建新网站一样去创建,域名使用新的域名,数据库可以创建一个新的。
步骤05:将旧网站的HTML等文件放到新网站的文件夹中
将我们之前打包的网站文件(HTML、PHP文件一类),复制到如下目录中,然后解压缩。
需要删除自带的404.html和index.html
解压缩的时候需要保持文件结构和之前的旧网站一致
解压缩后:
解压以后需要保证wp-config.php这个文件处于根目录中。如图所示:
步骤#06:恢复数据库文件
菜单:宝塔后台——数据库——找到自己创建的数据库,然后点击导入,选择本地上传的方式,把旧网站的数据库上传上去。
然后点击导入,导入刚才上传的文件。
步骤#07:网站配置
比如原来网站使用了SSL,那么先把SSL开启。
还有伪静态,如果以前开启了,那么也把伪静态打开。
例如:
步骤#08:更新WP-Config.php文件的数据库名字和密码
在网站根目录中,找到wp-config.php文件,就能看到文件中有如下三行代码,这个需要替换为新的。也就是我们刚开始创建网站的时候的用户名和密码。
define( ‘DB_NAME’, ‘ensky.tech’ );
define( ‘DB_USER’, ‘ensky.tech’ );
define( ‘DB_PASSWORD’, ‘IamEnsky’ );
这个地方注意数据库名字的大小写。如果创建网站的时候,数据库写的是Ensky_Tech,但实际后台可能是ensky_tech。
关于数据库前缀:
$table_prefix = ‘wpensky_’;
如果想修改数据库前缀的话,可以参考:https://m.wpjam.com/m/how-to-change-the-wordpress-database-prefix/
步骤#09:更新网站URL
由于之前的网站域名和新的域名不一样,但是我们之前网站数据库中保存的URL又是旧的,所以需要更新网站的URL。
可以使用wp-config.php文件来更新,添加如下两行代码:
define( ‘WP_HOME’, ‘https://test.ensky.com/’ );
define( ‘WP_SITEURL’, ‘https://test.ensky.com/’ );
删除WP-Rocket插件
WP-Rocket会记录旧网站的URL信息
Warning: file_exists(): open_basedir restriction in effect. File(/www/wwwroot/ensky.tech/wp-content/plugins/wp-rocket_v3.9.1/) is not within the allowed path(s): (/www/wwwroot/newdomain.com/:/tmp/) in /www/wwwroot/newdomain.com/wp-content/advanced-cache.php on line 17
附录:
延伸阅读:https://wordpress.org/support/article/changing-the-site-url/
Leave a Reply