用免费的Google App Engine建立强大的Blog网站
对于Google的这个好东东,大家都不会陌生吧?问题的提出:
1.国内的虚拟主机感觉速度时好时坏,总不令人满意,所以有找一个稳定的主机的想法,但又不准备再花钱,因为国内和国外的主机买的时间也不长,也不想浪费金钱以及人力来搬家。
2今天前了解了一下Google App Engine,其实Google的东西总是太好太强大,以至于我这样的菜鸟只好避而远之,但又看到有人已经将整个网站都搬到了GAE,并且还实现了许多强悍的功能,所以羡慕不已。所以今天就拿着人家的教程也来建立一个blog程序算是尝试吧,更多的想法有待更多的尝试。
Google App Engine,简单的说就是一个Google提供的强大的开放的虚拟主机,每个用户可以建立10个app,也就是10个网站,每个网站500M的空间,也就相当于5G的个人空间。不过,大家不要动歪脑筋,因为Google的限制中一个app只能最多1000个文件,单文件最大500K,所以基本上以为这空间可以放大容量文件的就死心吧。加上GAE提供的是python语言的支持,还不支持PHP,更不用说.NET了,同时还没有MYSQL,自身提供的数据库好像还是很不强大的,另外还不支持FTP,需要使用python上传(不过还蛮好用),加上python的程序本身就不多,Google的GAE又有很多的限制,所以基本上只有拿GAE看看的份了。
今天寻找了一下python+blog,不过效果不好,可能国内的还不多吧。后来找到了这个micolog(下载地址,现在0.5版本),看到这个的时候是惊喜的,配置完成后登陆到后台完全是惊讶的,应该说这确实是一个非常不错的blog程序了,并且和wordpress做的很像,功能也类似,打着GAE python blog的旗号,让人非常喜欢。看看人家列举的功能吧:
custom theme
tags and categories for the blog entry.
rich content editor by tinymce
import data from wordpress export file
menu & pages management.
cache enabled
implement wordPress API and metaWeblog API ,support client writer (such as window live writer)
看到上面这些功能我想基本上都够用了吧。既然说到这里,那么我们做一下简单的比较吧,我为什么要推荐这样的一个blog。首先不管zblog还是wordpress都需要空间存放,那就需要购买虚拟主机,而如果用GAE则完全免费,并且GAE的速度是飞快的没有怠机的(可能会有,但Google强大的集群技术应该不会出现这样的情况);其次,如果使用Google blog服务,虽然可以绑定自己的域名,但是总在页面最上显示Blogger的搜索和提示,总觉得不爽;再次,我想放自己的Google adsense怎么办(Blogger是支持adsense的)?总觉自己做模板什么的灵活一些,Blogger的adsense存放位置可能不是很灵活。可能原因还有更多,当然GAE的缺点也是有的,比如可能被墙挡住,数据库不容易控制等等。话题有点扯远,甚至说到了GAE和虚拟主机的比较去了。从上面的功能上来看,tag和categories我觉得不用说,定制皮肤还不错,我喜欢的是从wordpress导入、拥有pages功能和支持WLW,当然cache也不错。所以,如果你想用Wordpress,那么你可以先用micolog+GAE建立一个bolg试试,免费加快速访问,一定会让你惊喜的。
回到正题,从头开始讲整个安装设置,包括Windows live writer中的设置。
1.既然是使用GAE,那当然要注册一个GAE吧,你只要有Gmail帐号就可以了。然后按照步骤建立一个app,这样你就差不多得到你的网站名了,我注册的是tangf2004,所以可以使用tangf2004.appspot.com这个Google提供的免费二级域名来访问。
2.下载App Engine SDK。因为要用到这个来上传app的。安装SDK,桌面上就提供了一个Google App Engine的文件夹快捷图标,进入该文件夹,看到的是一些py文件,不用管,只要知道dev_appserver.py是在本机模拟开发环境的,而appcfg.py是用于上传等工作的,具体就去参考入门指南吧。
3.下载micolog,这是主程序当然要下载了。完成后是一个压缩包,将该压缩包解压缩到Google App Engine所在目录。
4.进入Google App Engine下的micolog目录,用文本编辑器打开app.yaml文件,这是一个配置文件,只需要将第一行的application后的内容改成你所建立的app的ID就可以了,比如我的就是tangf2004。(要知道第一次就是因为没有理解这个导致文件上传到GAE都没有成功,笨吧)
5.开始-运行-cmd,命令行进入到Google App Engine目录,输入命令:appcfg.py update micolog/,回车确定。第一次上传的话会提示输入Email,就是你自己注册的Gmail地址,密码也是你的gmail地址,然后提示一些信息,大致就是验证通过、找到多少文件、开始上传、结束上传等信息,很快就完成了。(如第4点所说,如果app.yaml文件的ID是错的那么你是上传不成功的)
6.那就赶紧开始你的Blog之旅吧。登录tangf2004.appspot.com就可以看到效果了。点击右上角的admin就可以开始管理你的blog了。看一下简单的后台吧,和wordpress很像哦。
虽然看上去完工了,但后续工作还没有完。下面再说几件事情吧。
将该app绑定到一个自有的二级域名:
首先该域名是已经注册了Google apps,如何注册请看我的上一文:Google apps注册以及解析ghs.google.com。(不过遗憾的是,好像我上文提供的ghs的替代IP又出问题了,下面留言的朋友提供的IP也不行,最后勉强又找了一个可用的IP。我怀疑徐明的博客就是因为墙挡住了而无法访问)。
然后,进入到appengine中你刚刚建立的app的控制面板,在左侧的管理工具栏中点击Versions,有一个add domain的按钮,就是它了,点击进入下一页面提示输入域名,直接就是国际域名,比如我的就是sharesh.cn,如果你的域名还没有注册Google apps那么会提示无法继续的。再继续的话就是进入到Google apps的管理面板了,提示输入域名,写一个二级域名就可以了,所以我就写了gae.sharesh.cn。确定后提示该二级域名的CNAME需要指向ghs.google.com,完成后才能确认点那个我已经完成了该操作的按钮。(这里很简单,图片也不上了,写的也很罗嗦,自己一步一步很容易搞定的)
最后,需要在域名中设置上一步中的二级域名的CNAME记录。进入时代互联的控制面板,域名VDNS管理,增加一个二级域名gde,我没有使用CNAME,而是直接使用了A记录,A记录的IP设置为刚刚找到的可以访问的ghs对应的IP就可以了。重启VDNS,没有等待几秒,我就去点了上一步中的我已完成操作确认域名,竟然就直接可以用了,看来增加一个二级域名的DNS解析速度还是比较快的。
所以,你现在可以通过这两个域名来访问我的GAE上的blog程序了:GAE.sharesh.cn(我自己的二级域名)和Tangf2004.appspot.com(Google提供的免费二级域名),两者访问的效果都是一样的。
将wordpress数据导入micolog:
这一个步骤还是很简单的,首先登录wordpress的后台,选择导出,导出的是wordpress自有个是的XML文件。然后,登录micolog后台(忘了说了,micolog的登录是和gmail已经集成了,看来又用到了gmail的API了,够强悍),在设置中的导入导出,选择刚才导出的XML文件直接导入到wordpress中,即可,非常的简单而方便。顺便要提一下的是,wordpress的固定链接,在micolog中也存在,所以,如果你真的准备搬家到GAE,那么可以使用完全一致的固定