http://cnzhx.net/blog/move-wordpress-site-step-by-step/也许很多人都有跟我类似的经历:因为某种原因需要将自己的WordPress站点从一个空间转移到另一个空间。我最近折腾这些比较多,将自己的经验总结一下,一方面留待以后参照使用,也就不用再费脑子了,另一方面也希望能够作为网友的借鉴。
鉴于对这篇文章感兴趣的朋友都或多或少有些经验,某些环节我就简略了,如果有什么特别需要可以在文章后面写评论,我会尽力解答每一个提问。
废话少说,言归正传:
1、申请新的空间服务器。要换空间,第一步当然是先找个服务器,免费的还是收费的咱就不说了,各人有各人的具体情况。在我看来,如果有合适的免费空间那就还是用免费的吧,随时都能再搬也不会觉得太可惜。
2、在新服务器上设定 .htaccess 的301跳转到自己的域名。当然,如果没有自己的域名就最好去申请一个了。因为没有自己的域名的话,换了服务器空间就得用它提供的子域名,那你之前的好不容易攒起来的人气就一下子丢失了。虽然你仍然可以设置301跳转,将原来空间的访问者转向新地址,可是别忘了,原来的地址可能已经不能用了,不然你干吗急着换空间呢。比如像我这种情况。
下面是我的301跳转代码,如果你图省事可以直接复制粘贴使用,记得把其中的cnzhx.net
改成你自己的。
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !^cnzhx.net$ [NC]
RewriteRule ^(.*)$ http://cnzhx.net/$1 [L,R=301]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.html\ HTTP/
RewriteRule ^index\.html$ http://cnzhx.net/ [R=301,L]
这样设定的目的很简单,就是保证在新空间完成所有配置之前不让别人,主要是搜索引擎,访问新空间。因为这时候新空间的访问地址还不是自己的域名,被搜索引擎索引了并不是一件好事。而且,设置完成之后这个也不需要去掉,可以防止别人,包括搜索引擎,通过该空间的免费子域名而不是你自己的域名来访问你的空间,保证空间地址的唯一性。
3、将原服务器上的所有网站文件转移到新服务器上。推荐使用ftp程序如FlashFXP等从原服务器下载,然后手动分批打包成几个.zip格式的压缩文件,将压缩文件上传到新服务器并解压。这是因为:a、直接通过ftp软件上传到新服务器的话速度比较慢,如果你不怕慢就直接通过ftp上传吧,这是最省事的;b、某些服务器会限制上传文件的大小,所以需要手动自己打几个包。
如果你使用了Dreamweaver之类的网站管理软件,一般都会有一个网站的本地备份,这样你的工作就简单了许多。值得一提的是,如果通过Dreamweaver将网站内容上传到新服务器,那就要小心了:这东西可不是一般的慢,可能需要几个小时,甚至几十小时,而且还不能保证将所有文件都一次性上传成功。
4、修改新服务器上WordPress的配置文件wp-config.php
,将其中的数据库和用户名及密码等信息换成新服务器上的对应内容。
5、将原服务器上的所有数据库都备份下载到本地(建议使用phpmyAdmin提供的导出为压缩文件功能),然后使用导入功能放到新服务器上。
6、记录原服务器上的子域名、MX记录、CNAME(别名)记录等设置,然后删除原服务器上的“域名停放 Domain parking”,最后将域名停放到新服务器上。
另外,如果你在原来的服务器上使用了子域名,一般很有可能子域名所在的位置是一个单独的文件夹,并且这个文件夹是你在使用服务器上的“停放子域名” 功能时自动创建的。那么当你删除该子域名的时候,对应的文件夹往往也会同时被自动删除。所以,请确保你已经备份了子域名的所有文件内容。
7、按照6的记录,在新服务器上设置子域名、MX记录、CNAME(别名)记录等。等待新的域名解析更新大约需要几个小时,最多72小时。一般个把小时之后就可以通过自己的域名访问新服务器上的网站了。
在所有域名解析完成之前,可能对你的域名的访问还会被定向到原服务器,所以,最好等三天后再删除原服务器上的内容。但是这样一来,可能就会出现有人在你的原服务器上留言等等问题。如果你不希望出现这样的问题,可以删除原服务器上的内容。但是这样可能会导致在这段短的时间里,别人会通过你的域名访问到一个空的空间。要怎么做,自己决定吧。
好,到这里搬家过程就完成了,因为用的是自己的域名,别的设置就不用更改了,很方便。所以,如果打算长期在网上混,还是弄个自己个域名吧。
因为搬家已经好几天了,某些细节记得不是很清楚了,如果有什么错误,或者是没有说清楚的地方,希望各位网友指出,谢谢!
8、补充,某些插件可能需要重新启用或设置。
如WP_Super_Cache,请参考WordPress网站搬家后需重新设置WP_Super_Cache。
经过长期实践,总结了一套网站搬家步骤,请参考网站更换服务器优化步骤记录一文,比这篇简洁多了。