写在前面的话
Written at the beginning
众所周知(如果不知道猛击这里),在2011年六月的最后一天,比尔盖子网站全部下线搬迁。
这一次,因为饱受Godaddy主机的折磨,比尔盖子在今年初就狠下心来决定:7月份一定要换个VPS(在今年1月的公告中透露过)。
果然不出大家的所料,比尔盖子更换了主机。
比尔盖子为了选择一个价格公道,性能优良的VPS,艰难的百度和谷歌,最终选择了Linode主机。这个主机的机房位于硅谷,是中国连接美国速度最快的机房,而且在中国站长中口碑也是相当的好。
但是,出现了一点小意外,导致了信用卡不慎冻结。最终只能使用一家比较可靠的Linode支付宝代购系统用支付宝买下了Linode。这个代购虽然可靠、方便,但是,它是将广大代购用户当成系统编写者的子账户处理的。因此只能在这个Linode代购系统的简易控制面板中操作,像比尔盖子这种想要更换机房、更换内核的极客来说,实在是没有什么可折腾性。因此,比尔盖子的网站将在2011年7月27日时再度搬迁。
正文
一般来讲,搬迁网站的过程无非就是这样:
1.关闭网站访问
2.FTP下载所有文件到本地(聪明点的人会打包压缩,另一些人就直接FTP下载,效率不知有多底,可悲啊)
3.将Mysql数据库导出到本地
4.上传导出到本地的文件到新主机
5.导入本地的数据库到新主机
6.修改网站的配置文件,以便连接新的数据库
7.修改域名的指向,指向到新主机
8.最后的一点点排除故障工作,比如解决死链接
这样做,对比尔盖子这样有一点规模的网站来是相当不合适。因为本网站的数据量高到4GB,如果要采用以上的方法,就等于一共下载和上传了8GB的数据!而站长只拥有512K的ADSL连入互联网,如果按照以上步骤,48小时不关机连续作业也完成不了!这该如何是好呢?
话说天下无难事,只怕有心人。比尔盖子想到了自己曾经用SSH远程连接到服务器下载文件时,几乎每次都是瞬间完成,下载速度最快达到了8Mb/s。如果利用这伟大的美国网速,那么搬迁就快多了。话说得好听,那到底怎么利用美国充沛的带宽资源呢?首先我觉得应该先压缩我网站的所有数据。我来到了Godaddy的文件管理面版,悲剧的发现最大只能压缩20MB的数据!这该怎么办呢?
盖子突然想到,因为我的两个主机都可以通过SSH进行远程管理,因此这个过程可以在SSH上操作。立即输入
tar -jcvf website.tar.bz2 html
来压缩我Godaddy主机上的HTML目录,我所有的网站程序都在这个目录里,但是我发现,压缩用了相当长的时间,最后居然强行停止!经过查看记录,盖子的这个博客安装了一个缓存插件,而系统在压缩这个插件产生的缓存时用了相当长的时间。后来盖子进入这个目录查看,发现里面已经生成超过1000个文件,难怪压缩都强行中断了。
快快使用rm -r删除这个目录,结果,删除用时6分钟,最后还报错。这个缓存是在是太夸张了吧!最后,盖子又进入Godaddy的文件管理器,删除了几个残余文件,才算万事!再次尝试进行压缩,这回终于成功了。不过很奇怪,我的网站的数据量为4GB,但压缩完之后居然文件只有300多MB,以至于比尔盖子总是觉得一些文件在压缩时被丢掉了。
之后,比尔盖子登录了新的VPS,输入
wget http://biergaizi.con/html.tar.bz2
下载刚打包完的压缩文件,神速,2分钟搞定。然后使用
tar -jxvf html.tar.bz2
来解压缩,命令行飞速划过屏幕,解压缩完成了。接下来的一个难题,就是配置Web+PHP+Mysql服务器了。幸好比尔盖子平时就爱折腾以Fedora为主的Linux,你可以去看看 比尔盖子站长使用Linux的经历,就知道比尔盖子多么极客了。今天,平时折腾得到的经验总算用上了。这个VPS的系统是盖子亲自选的CentOS5.6,就是冲着Yum和Fedora一样才选择的CentOS,而不是Debian。
随着比尔盖子噼里啪啦的敲击yum install,yum update和service httpd restart,一个使用Apache+PHP5.3+Mysql5的Web服务器就这样完工了。
(具体的细节,我忘记了,会在本月的第二次搬家中详细写出来的)
最后安装了PHPMyAdmin来管理数据库,又安装了Zend和Xcache这一全新的服务器缓存插件。
随着一行reboot,比尔盖子的全新网站就正式运行了起来!