25 日中午一点多钟,我刚下床,看到 leeseon 从 Google Talk 上告诉我他已经买了 Site5 的虚拟主机了。我当时心想好日子终于来临了,就什么都不顾的去答复 leeseon 了,很快就在后台看到了 leeseon 已经为我添加了这个域名,因此我要做的就是更新这个域名的 DNS 解析了。
我在 24 日写完了上一篇文章之后,便迫不及待的开始备份在 Dreamhost 虚拟主机下资料了。虽然 leeseon 说 DH 主机明年二月份才到期,但在年终加上圣诞节的缘故,Site5 有折扣活动,因此他告诉我会在年底之前把主机买下来。到了 24 日,我觉得离年终应该没几天了,于是就备份资料,所以连 blog 也不再更新了。当时觉得这样做挺合适,但没想到更新 DNS 的速度实在是慢,所以我直到现在才写了新一篇的文章。
当我把资料备份好了之后,我就立刻上了 GoDaddy 的后台,修改了这个域名的 DNS 地址。我在测试 Site5 的主机的时候,用的是另外一个备用的域名,结果凌晨更新的设置,到了中午去了学校之后就生效了。所以说我觉得这次更新设定应该也不会慢才对。不过我那天从下午一直盼到晚上,当中不停的刷新,但看到的总是我的就的网页的地址。我中间又到过 GoDaddy 的后台里检查了一遍又一遍的设定,生怕是我输入错误,但总也找不出错来。我还试着把 DNS 弄到默认再弄回来,还是没有用。
当中有一阵子似乎是生效了,我的首页上显式的是淡淡的墨绿色背景的 cPanel 的 Apache 服务器设置成功的消息。偏偏这个时候我发现我无法从 Site5 的后台进入到设定了,也就是我的域名信息不见了,所以说我也不确定这个 cPanel 的消息是来自那个主机。当时 leeseon 不在线上,我也没法问,不过之前从来没有遇到过这个消息,所以我估计是 DNS 已经生效了。而且有人在 Twitter 上给我说我的 blog 进不去了,我也估计是 DNS 生效的原因。但郁闷的是我进入 blog/
目录下之后,却依然看到的是我的 blog。到后来连首页也回去了过去的首页的样子,似乎 DNS 的更新又完全失效了。而我通过 DNS 工具查看我的域名,DNS 明明已经是 Site5 的了啊。没办法,所以我只有继续等待了。
到了今天,leeseon 在网上回复了我,并帮我重新设定了站点,于是后台的域名设定则又出来了。到了晚些时候,我终于发现域名打开后有变成了 cPanel 的消息。我在用测试帐号的时候,添加了域名并等 DNS 设定更新完毕之后,从浏览器里访问直接就是 public_html/
里面的目录列表,可不是这个 cPanel 的提示信息。我通过 ssh 查看目录,也发现在 public_html/
目录里面有些隐藏文件,于是我就打开两个帐号的后台一一比对。后来我看到正式的帐号里面的 FrontPage 扩展这个功能打开了,而在测试帐号里面这个功能是关闭着的。我看了介绍,这个功能似乎和微软的 FrontPage 这个软件有关,我又不用它,于是就把这个功能给关上了。果然关上之后 public_html/
目录里面的一些隐藏文件就没有了,但浏览器里显式的还是 cPanel 的消息,无论我有没有在目录里面放上 index.html
。
没办法,我只好仔细看看上面怎么说的。结果上面说如果这不是你预期的结果,就应该联系管理员。于是我就去找了 Site5 的客服。和上次一样,在线聊天的客服帮我创立了一个 ticket,然后我就等回复。回复说我的虚拟主机上的 DNS 设定有问题,帮我改过来之后,说是这个设定要 90 分钟才能生效,他们到时候会通知我。我于是觉得 Site5 的客服确实态度很不错,我接触过的虚拟主机公司的客服除了 Site5 外,就只有 iWeb 了,虽然没有什么发言权,但作为普通用户来说,这种服务算是很周到了。到了 90 分钟后,设定还没有生效,但对方已经发了邮件过来他们会继续观察。而又过了一会,他们给我发邮件说现在问题应该已经解决了,我看了一下果然已经可以显式我上传的测试网页了。Site5 客服还有一个比较贴心的内容就是交流的记录都可以保存下来。除了聊天记录在服务结束之后可以选择发送到邮箱外,我今天才发现在后台的 Support 标签下会记录你每一次通过 ticket 和客服交流的过程,这一点我过去从来没有遇到过。
这一点弄好之后,其它就基本上没有问题了。我于是就把 DH 主机上打的包放进公开的域名目录下,然后从 Site5 的 ssh 里面直接通过 wget 下载过来。我怀疑这两个公司用的机房是不是很近啊,我这种下载的最后平均速度竟然达到了 9 Mb/s。而我下载 6A 公司主机上的 Movable Type 的速度才只有 600 Kb/s。不过顾不上兴奋,我就想先把 blog 弄起来再说,因为测试时使用 MT 的速度实在是让我太爽了。
我用了 SSH 的方法安装了 MT 之后,就 import 了之前 export 下来的文本文件。一开始我用的是 restore 的,结果提示有错误发生。其实正确的做法是使用 backup/restore,这样在后台上传的图片之类的信息(不止是图片文件)都会备份下来。而我过去不知道应该这样,就一直 export/import,但这样转移的就仅仅是文章。过去已经这样弄了几次,很多附件的信息早就丢了,所以我也不在意这次是用的什么方法了。重新生成站点后,把过去的 uploads
目录和 asserts_c/
目录都复制到新的域名下,站点看上去就正常了。MT 就是这点好,静态化的结果,无论后台是怎么样,生成的结果都是完美的。
等我把这一切搞定之后,我去了 phpMyAdmin 看一看 MySQL 数据库的效果如何。其实也就是瞎看看,基本上看不出什么道道来。但这次我却悲剧的发现,数据库的字符集设定竟然是 latin1!!!天杀的 Site5,我在用测试帐号的时候检查过 phpMyAdmin 的启示页面,那时的字符集明明就是 utf8 的,怎么这会一下子成了 latin1。我在 2007 年用 WordPress 的时候遇到过这么一遭,到后来一直没有遇到过这种问题,这下子一下出现我也有些措手不及。我试着从 Operation 里面直接修改数据库的字符集设定,然后数据库这边的内容变成了乱码,MT 后台的文章也全部变成了乱码。天杀的。
我没有仔细考虑解决方案,而是平感觉找了条最简单却未必简捷的方法,就是重新生成数据库。我 Drop 了所有的表,重新运行 mt.cgi
程序,然后重新进行各种设定。结果导入完毕之后,后台竟然直接就成了乱码。奶奶的,实在不行就删除了这个数据库,重新建立,然后马上修更改字符集的设定,然后再安装。结果还是一样。我觉得我可能要修改了全局的变量才行吧,但我似乎又没有这个权限,只好有时间找 leeseon 或客服帮忙了。
不过,我倒懒得再弄 phpMyAdmin 了。MySQL 不行,我就直接用 SQLite3。我在测试 MT5 的时候经常用它来做数据引擎,一点也不耽误正常的数据库服务器,是我的最爱,我日常写数据库相关的程序也用它。其实我觉得个人 blog 上用 SQLite3 和 MT 应该也算是绝配了,只是不明白为什么 MT5 要放弃它。不过我看 MT5rc3(目前日文版之外的最新 Release Candidate 版本)的 mt-wizard 里面的数据库设置的下拉菜单选项中,还能看到 SQLite3 的名字,希望 6A 能够回心转意吧。其实我这次首先选择 MySQL 就是因为 MT5 会把 MySQL 当作主要支持的引擎,因此才放弃 SQLite3。不过 6A 已经有转换方案,而且目前的 MT5 版本对我来说都有个致命的 bug,我也许会在刚发布一段时间之内无法使用这个版本,所以我这次用 SQLite3 也没有什么顾虑。
结果上传了现有的文章之后,得到一个 4.3Mb 的 SQLite3 数据库文件,我目前的 400 多篇文章的数量来说,数据库这方面我感觉不到会影响使用的速度。不过我目前也仍然在测试当中。
但至此,使用新服务器的幸福日子应该开始了吧。昨天和 leeseon 聊天的时候,他说 Site5 可能是他在换到 VPS 之前最后使用的虚拟主机了吧。我目前对 Site5 的虚拟主机感觉还不错,但我的心里还有一个 media temple。网上对它的评价是虚拟主机的终点站,也就是一旦用了它之后,在虚拟主机方面就不会考虑别家的了。不过它的价格比较高端,最基础的 plan 是 20 美元一个月,所以很多人都是一起合租的它的虚拟主机。不过我测试过那些用 mt 的人的网站,感觉速度上也一般,自己从心里比较一下,除了操纵的体验之外,想不出 mt 比 Site5 强很多的地方。也许某一天自己有钱了,会弄个 mt 的空间来满足一下这个“夙愿”吧。 🙂
《更新虚拟主机》有1条评论