写文章
颜sir
2020-03-23 17:08

实操贴:纯小白怎么把网站迁到Siteground?

本篇优秀文章被收录在“平台引流的秘密”专题

先说结论:

这篇文章会用到迁站神器SG Migrator,就算你再小白也不怕,因为就是写给你看的,通篇文章的操作,加起来花不了10分钟。

----------

最近被频繁问到一个问题。

“颜sir,学询盘课前我就把网站做好了,在学了你课后被种草了Siteground,请问有没有办法把网站迁到SG上去?我是技术小白/菜鸟,谢谢。”

迁网站之前是个技术活,因为要打包网站内容和数据库,这样才能做到万无一失,所以我通常都回复让直接找客服。

但想来想去客服也不是完美的解决办法,因为:

  1. 找客服迁效率太低,前后要花好几天时间;

  2. SG免费的迁移机会只有一次,总感觉以后用得上,不能现在浪费;

  3. 官方迁得也不完美,小细节会被忽略掉;

恰好最近我个人博客也出了点问题,就趁着机会实践了,看能不能找到适合完全不懂技术的人的迁移方法。

结果还真被我找到了,经过我大量实践(前后迁移了4个站),发现Siteground内置的一款工具——SG Migrator用起来太爽了,而且最最重要的一点,它完全不受原本的空间限制

不管你用的是Bluehost、Hostgator,还是各类VPS,又或者是建站公司给你弄的不知名的空间,你都可以follow这篇文章把网站迁到SG上。

因为又是一篇实操型文章,所以推荐你到电脑上看贴,边看边操作。

当然啦,想要迁移网站,首先你必须要有一个SG的空间,推荐购买下面这个版本,这个版本的空间对WordPress网站做了些微优化:

2DD951A3-0CEC-4B04-A94C-7C3859939ED4.png

为防止买错,可以点击下面的链接过去:

SiteGround官方链接SiteGround官方链接https://www.siteground.com/go/x4u0y1beqi


为什么会有这篇教程


我个人博客之前一直放阿里云的VPS上,为了极致的速度,我还用openLiteSpeed替换了Nginx,折腾无极限嘛。

直到有一天,因为频繁和印度工程师联系,我的服务器密码泄露了……(所以教训啊,印度那边网络环境真的不好,而且印度的coder也不喜欢用杀毒软件,所以尽量要给他们临时账户,而且隔三差五就要给账户改密码)

一开始服务器宕机我没在意,让印度的coder帮我检查了下,发现缺了个文件,他帮我补齐后网站恢复正常。

其实那时他就已经警告我了,但我以为是更新造成的文件丢失,没在意:

c02096e83cb11d9944bb3c9428a759a2.png

再然后,阿里云开始短信提醒我,说我的流量以一天200G的速度在消耗:

211975b380f3e67c7891638b600fc5bb.jpg

我以为是Cloudfront第一次上传文件导致的流量消耗,还是没在意。

直到阿里云告诉我,服务器1个T的流量耗尽,导致我服务器被强制关闭,且账户欠费,我才后知后觉意识到网站遭遇了流量攻击。

我最近事情多,也不太喜欢麻烦,就想着先把网站迁移到SG,让服务器的事情先消停消停,所以就有了这篇文章。


工具和思路


经过我反复尝试(加上这次,我总共用SG的工具迁移了4个站),我发现SG Migrator异常好用。

迁移一个500M左右的网站,只需要操作10分钟,外加一些等待时间即可,而且丝毫没有文件大小限制,这太关键了。

之前用All in one migration或者WP migrator时,总会碰到文件限制,想想都头疼。

最重要的SG的迁移工具特别稳定,至今在我手里迁移的网站都是perfect状态。

使用SG内置工具迁移网站很简单,思路是:

  1. 用SG做个临时站

  2. 把临时站设为“收货地址”

  3. 从原站“发货”

  4. 确认“收货”后,把SG的临时域名切换成本来的域名

接下来就是详细步骤。

注意,为了cover住100%的情况,我就把所有可能性都枚举出来,做最全面的打算,所以下面的步骤看起来多,但其实很多步骤我都是为了保险起见加上去的,这样最稳妥。


申请临时域名


登录SG后台新建WP网站:

0b952e2deb5f25041e8e0dc932fb2d95.png

选用临时域名,如图,系统给我分配的临时域名是judyw3.sg-host.com:

fd407ec039b6ad60110c601a00026f06.png

做如下配置:

83b76da326e611692de845b3efd2a839.png

直接点“Finish”:

ef074f847bf9bf39b6ec5913fcee6e63.png

等待临时网站生成:

42e7ab8ae779a61c3565775b6b0587d5.png

你可能会卡在这一步这一直转,如果超过10分钟还没反应,很有可能是SG早已准备好了站点,但动画卡住了导致没跳页面。

碰到这种情况,就强制刷新页面,然后点击website,此时你会发现网站已经准备好了,点击下图位置的按键,进入网站管理页面:

a6e47511144df868b6352db44121591a.png


建立token


进入后可以看到如下图所示的页面,SG已经自动帮我们生成了token,复制token代码并保存到笔记本。

什么是token?你可以把它理解成“收货地址”,有了收货地址,发文件的原网站才能“发货”。

17e2a85a412b976a92c22f931d60f173.png

如果此处没有token代码,那说明SG没能自动帮你生成,没关系,点击“Generate”生成一个就好。

现在我们就有了临时网站的“收货地址”,是时候去原来网站“发货”了。


将网站传到token


打开要迁移的网站(以我个人博客询盘自由网xunpanziyou.com为例),登录后台,在plugin里搜索SG专用插件——SG Migrator。

849f827991cc0a66a95ee8075f6cfcd5.png

在网站后台,将token代码复制进去,就可以开始传输了。

d40529b745a200068f15c9ef4842f81b.png

之后会弹出个警告,意思是,“收货”的临时网站里的所有文件都会被覆盖掉(本该如此),直接确认即可。

b8be14e1e4dcc8c49db1249e74f4de83.png

等待10-30分钟。

83bdc3ca580f1fddbdde287b5440488f.png

然后就会出现下面这个提示:

384dab12e681bcf9a60d907b95cf1b96.png

把右边的Name Sever的信息复制到记事本中,然后开始下面的确认工作。


确认网站迁移成功


登录临时网址的网站后台,比如我这里就登录:judyw3.sg-host.com/wp-admin。

因为临时域名没有安装SSL证书,所以浏览器可能会弹出风险提示。

这个不打紧,按照如下图所示的点击顺序进入网址即可:

61a1633b85eebfeaf0b98e29c0d9c9e2.png

因为已经迁移成功,所有内容都到了临时网站上,包括后台的登录信息,所以此处填入原本网站的账户密码:

8f00b5e86260d653fe421f5612adc1ea.png

只要能正常登录,就说明没有问题,登录后,把所有缓存插件暂时关闭掉,比如:

  • SG Optimizer

  • W3 Total Cache

  • WP Rocket

  • Lite Speed

  • Fastest Cache

此时再登录网站前台,通常你就会发现网站的样式也完整了:

ed49cb52831d913d5636bdf9cb94df96.png

确认没什么大问题后,开始处理下原始空间留下的问题。


禁用老地址的收录


网站迁移后,老空间就不会绑定任何域名,想要访问老空间的内容,就必须使用IP地址。

照理说,没有域名的空间,里头的内容不太可能被谷歌收录,但为了保险起见,我们最好把老空间的内容,从SEO层面禁掉。

下面就是“走狗烹”的做法:

在原始网站里,安装并激活“Advanced File Manager”:

b1be35cecf738b6611488b7b621b0a22.png

注意:是在原始网站里操作,而不是在临时网站里操作!这个很IMPORTANT!

在网站根目录(通常是public_html文件夹)下,新建一个txt文件:

a28b0542b0366fa817f943b599b9c7fa.png

右键点击刚刚新建好的robot.txt,再点击Editor:

bb7ad7c501c84770093138be05d44d56.png

将以下代码复制进去,保存退出:

User-agent: *
Disallow: /

d2ac9dbbb6ef7d82a009c08b45f32d64.png

为了确认,我们尝试用域名+/robots.txt访问这个文件,比如我访问https://xunpanziyou.com/robots.txt,就可以看到浏览器显示如下:

247660c3cf3432de439de71b3695746b.png

反正域名再过一会就要迁移到新的地方并指向新的空间,新的空间是不会有这样的robots文件的。

等域名迁移成功,这里的robots.txt的链接,也会变成类似于123.123.123.123/robots.txt,任何爬网站的小蜘蛛,见到这个robots.txt都会绕着走。


切换域名并记录邮箱值


接下来就开始转移域名和企业邮箱了,因为转移域名需要一点时间,所以我们的思路是,先保证域名转成功。

等到域名转好了,再迁移企业邮箱,这样能保证企业邮箱始终可用。

先登录管理域名的地方,比如我的域名是在NameSilo上买的,我就登录NameSilo的后台,进入DNS的管理中心:

70ceb366161e3f94a78e9d2af5bf6c57.png

你会看到有MX和TXT的记录:

108091fed74639b6956a80d35c38c758.png

找到所有MX和TXT记录,把它们的类型和值记录下来,少数企业邮箱还有mail开头的CNAME记录,也把它记录下来。

每个记录都包含:

  1. 类型(Type)

  2. 主机名(Hostname,可不填)

  3. 指向值(Value)

  4. 优先级(Prio)

  5. 留存时间(TTL,NameSilo中以秒为单位)

最后我们应该得到一个类似下面这样的表格,你也可以把整个DNS的页面截个图,以备后用:

WeChatd18050ae35b38d70057ca44d16c213d8.png

spacer.gif记录好之后就暂时不用管了,等到域名迁移好了再迁邮箱,这样企业邮箱就一直是可用状态。

然后回到域名管理中心,进入NS的管理界面:

0ac64fdee4bea5036d35b9b4956e50ac.png

然后把NS的值改为记事本中的两个值,确认无误后,点击submit:

b900fcbf4e0789895c897c175be86369.png

进入SG后台的website页面,点击临时域名的“manage”选项:

f4be9de6d20e088cb8c3acd376301620.png

点击临时域名边上的三个小点,选择里面的“change primary domain”:

b1bac59536b0d0ba82e7ea7a2c06607d.png

填入要转移的域名并确认一遍:

97a86df42bebfbdb05cb747fdfe8225f.png

一分钟左右就会出现以下提示:

41d4e4da764e77aae1beb2e143f2f4b5.png

再然后就是等待了,NS传播时间有长有短,快的话几十分钟就好了,慢的话要48个小时。

实在等不及可以在NS LOOKUP网站查询NS的地址:

15ee579d4a8414f958c524ac6b23651a.png

也可以三不五时在SG的后台刷新。

744c0fa77364e26cd005c6e95a41734e.png

注意:少数情况下,域名迁移成功,SG的后台也反应不过来,依然有警告提示,我们只要尝试访问如下图所示的DNS ZONE,看看里面有没有内容。9a18cebc881ddaf102dd9217b7759c20.png

如果有内容,就说明确确实实已经已经迁移成功,那就不要管SG的警告提示,放心大胆做接下来的步骤吧。


迁移邮箱


网址迁移成功后,就可以在SG的后台配置企业邮箱了,进入Siteground的DNS管理中心,就可以任意添加DNS记录了:

05b7775223c24d8936f5640866826ed0.png

比如我总共有5条记录,那这里就要添加5次:

b6fcd8f0600921d995a015c14abc0c39.png

以第一条mx记录为例,我在下图的1、2、3、4、5处分别做如下操作,填好后点左下角的“CREATE”即可:

6b4ac56510610b7f4551df04acadf320.png

  1. 类型选MX

  2. 主机名留空

  3. TTL选“2 hours”

  4. 优先级填入5

  5. 值填入qiye163mx01.mxmail.netease.com

所有的DNS记录填写规律都是一致的,只要对照我们的表格,按顺序填入就不会出错。

填完之后的第一天密切关注邮箱的收发情况,只要企业邮箱能正常收发,就说明迁移成功了。

或者你也可以给企业邮箱的卖家打个电话,让他们帮忙做下验证,看是否一切正常。


给域名申请SSL


网址迁移成功后,就可以在SG的后台一键申请SSL了。

申请方式异常简单,按如下顺序点击即可:

fdd162d3072dc7e49111cc5ceb935d80.png

之后,SG就会分配给我们一个SSL证书,我们就可以强制把网站所有链接转成安全链接了,将下图所示位置的HTTP Enforce打开即可:

ddbae1ae221637b2d0cad72790b76fdf.png


扫尾工作


很多迁移插件,在网站迁移成功后,都会出现“只有首页能访问,其他页面一概不能访问”的情况,这是因为WordPress缺失了.htaccess文件所导致的链接无法重写。

为了防止这个意外,先在Permalink中直接保存:

b265eb9ea5dd106dd263793796683eff.png

再然后,把网站里部分临时网站链接,全部改写成现在的链接,思路是这样的:

  • 将judyw3开头的链接,改成www.xunpanziyou.com

  • 将http://开头的链接,改成https://开头

  • 将不带www的网站链接,改成带www的

为了实现以上几点,首先下载插件:

c9b285775024e96db73c1cb759851607.png

把网站里所有临时域名都改成现在域名,做如下配置:

3caae6ee7475a6d69b33cdd20e1753bd.png

成功提示:

df91f1ba6b6374baea3f4c7643ff68d9.png

在把网站所有不带https的链接改掉:

d8d86a9879e9b41d2f393d2de0d93336.png

成功提示:

e4b6c1fffdfebb34e6259af5a0f264c5.png

再把网站所有不带www的链接改掉:

2487c5cee4678dfaa9768316c2222099.png

成功提示:

975a5a42487f51ac7722408b09bc18b6.png

如果网站安装了Elementor,那还需要使用Elementor里的链接替换功能,做如下设置:

6634c80fb33ae448ba102ec841931a12.png

其中第四步,需要分别填入:

  1. http://judyw3.sg-host.com → https://www.xunpanziyou.com

  2. https://judyw3.sg-host.com → https://www.xunpanziyou.com

  3. http://xunpanziyou.com → https://www.xunpanziyou.com

  4. https://xunpanziyou.com → https://www.xunpanziyou.com

  5. http://www.xunpanziyou.com → https://www.xunpanziyou.com

注意,因为我希望网址带上www,所以上面所有链接,最后都转到了www上,如果你不想要www,那目标网址也不应该有www,千万别照抄

成功提示如下,大多数命令执行后,你看到的应该都是个“0 row affected.”:

982630888a7d77a0a42966fb515a7439.png

然后,在“general”中重新生成下Elementor的样式表,保存后,清理网站的缓存:

f5a88ad25039ccdda46f77abe6f7a8fa.png

以上所有步骤做完就大功告成了。

关注作者,看更多TA的好文章 个人展示
颜sir 谁在评论里提醒下这位作者,懒得连名片都没填写。
举报
收藏
转发
0/500
添加表情
评论
评论 (19)
最近
最早

颜sir

一个教人搞询盘的米课老师,询盘自由网站长「xunpanziyou.com」

向TA提问

举报

举报原因:

垃圾广告
人身攻击
抄袭侵权
违法信息
取消 确定

圈内转发

0/104

分享至微信

复制链接

举报

请选择举报理由

留联系方式
垃圾广告
人身攻击
侵权抄袭
违法信息
举报

确认要删除自己的评论吗?

取消 确定

确认要删除自己的文章吗?

取消 确定
提问
设置提问积分
当前可用积分:
-
+
20
50
100
200
偷看

积分偷看

10积分
我的积分(可用积分)
确认偷看

问题已关注

答主回复后,系统将通知你

不再提示