Domain, Google Apps and App Engine
这篇文章跟大家分享一下我这两天折腾域名、Google Apps和App Engine的一些事。
原来,我在新网某代理下曾注册过一个cn和com域名,但不幸在某运动中cn域名和空间歇菜了,只剩下了一个com域名。最近,看见国内众多站长都把国际域名转移到国外,于是我也跟风想把我那com域名转出,但是没想到在国内转出域名还真是麻烦的要死,寄这资料寄那资料的,代理还爱理不理的(不过网上说没禁止转出和加收钱貌似是不错的了,Orz…)。由于快过年了,转出就更难了,加上我那域名是没怎么用过的烂米,干脆就不要了,烂掉算了。不过有想把域名转出到国外的朋友可以参考国内com域名转移到Godaddy详细教程(为什么选Godaddy?因为它是世界第一的域名注册商,价格便宜,服务好,功能多,限制少,更重要的是它支持支付宝!)。
于是乎,我在Godaddy重新注册了一个新的com域名(ETechL.com),注册过程跟在国内差不多,有点差别的就是全程e文+N多的诱惑促销。Godaddy的域名控制面板功能比国内的多多了,推荐能转移的赶紧转移,不要的就扔了,com域名还是在国外注册吧,cn域名经过这次运动你还敢要?谁知道哪天又来一次~
如果你只买域名不想要空间,光有个域名也没啥意思啊。不急,还有Google Apps。Google Apps是Google提供给域名所有者的一系列网络托管服务的总和,包含电子邮件、在线文档、日历等等服务内容。申请方法Google一下就有了,主要要注意两点:
- 尽量用国际域名,如com、net、org等,不过cn也可以曲线申请通过。
- 选所在地时别选“中国”,不给申请,貌似以前还限制中国IP,Orz…
Google Apps申请搞定后,最主要的设置就是验证域名所有权和激活Gmail,以及设置用你的域名访问电子邮件、在线文档、日历等等服务内容,这些网上都有很多了,我这里就不说了。
由于感觉Godaddy的域名服务器解析起来速度较慢,毕竟是在国外。所以后来我改用了国内免费的DNS解析服务DNSPod,下面就粘一下我的设置过程:
首先,登录你的Godaddy账号,进入Domain Manager,点击NameServers的Manage,会弹出下面的界面。
选择I host my domains with another provider,然后把DNSPod的六个域名解析服务器地址输进去。
点击确定,在Godaddy的设置就算完成了,剩下的工作就是到DNSPod进行具体设置。没有DNSPod账号的需先注册一个,免费的,但是注册时需要提供真实姓名和身份证,虽然随便填一个也可以忽悠过去,可如果你干的是正当事,最好还是填真实的,因为一旦发现虚假信息,你的域名就会被停止解析。下面晒一下我在DNSPod中对Google Apps做的域名的设置,主要就是CNAME和MX记录,不懂是什么东西?点这普及一下知识。
Note:ghs.google.com极具有被河蟹的可能,所以自有域名无法访问时,请从Google Apps首页登录。
话说,折腾到这,我该歇歇了,可我想要是能有URL转发,然后转到我的博客,那就好了。可惜DNSPod在运动过后,免费用户现在不支持转发了。此路不通,我们可以另寻他路。找个免费空间,然后做个重定向不就变相实现转发了嘛~~于是我又开始继续折腾了。。。
开始找的免费空间,要不是慢就是广告多,转了半天才选定了本来就在手边的Google App Engine!Google App Engine是Google提供的可扩展系统上构建网络应用程序。每个 Google App Engine 应用程序都可使用多达 500MB 的持久存储空间以及可支持每月500 万综合浏览量的足够带宽和CPU,而且可以添加到Google Apps。目前每个用户可以免费创建十个应用。这东西出来好久了,本来以前就想申请来玩,但是当时咋申请都搞不下来,后来就不了了之了。申请过程现在就比较简单了,主要就是有个手机验证(我用移动)。
利用gae做这个重定向应用非常的简单,我用的是python(需要下载对应Python的SDK),编写两个文件即可,第一次用的可以先来个Helloworld。
创建名为 redirect 的目录,然后在目录中创建名为 redirect.py 的文件,把下面的代码Copy进去:
from google.appengine.ext import webapp
from google.appengine.ext.webapp.util import run_wsgi_app
class MainPage(webapp.RequestHandler):
def get(self):
self.redirect("http://spork.cnblogs.com")
self.response.set_status(301)
application = webapp.WSGIApplication([('/',MainPage)], debug=True)
def main():
run_wsgi_app(application)
if __name__ == "__main__":
main()
把self.redirect里的地址换为你想重定向的地址即可。
接着,再创建一个 app.yaml 文件,这个是App Engine应用程序的配置文件,也把下面的代码Copy进去:
application: gospork
version: 1
runtime: python
api_version: 1
handlers:
- url: /.*
script: redirect.py
这里主要要改application中的id,要换为你的AppEngine应用id。
最后,你可以先在本地测试一下再上传,或者直接上传。上传完毕,就可以用http://application-id.appspot.com访问你的gae应用了,比如我这个就是访问http://gospork.appspot.com。
弄好gae应用后,还要在Google Apps中添加gae应用,并添加以你域名结尾的自定义URL,然后就是在DNS中添加CNAME,设置完毕,等上1个小时左右,就可以用http://spork.etechl.com访问我的博客了。^ ^
至此,折腾告一段落。
----------------------华丽的分割线------------------------
PS:本来想把ETechl.com CName到www.ETechl.com,然后www.ETechl.com CName到ghs再重定向,后来发现是不行滴,CName不能用在 base domain上,一般是@和www都设个A记录,指定到某个IP地址。因为Google Apps设置不了base domain的别名,只好删了base domain转向,把www改为A记录了,目前ghs.google.com的可用IP地址为:72.14.203.121,什么时候撞墙我不知,所以上面的东西真的很有可能是瞎折腾,囧rz...
- 又发现,貌似www在Google Apps的解析不成功!算了,不折腾了~
- 最终结果,www也是可以滴,但总体来说,用自定义域名登录Google Apps还是不太稳定!时得时不得,是墙的原因?不过Google Apps的Sites功能已经是被墙了。
- 发现一个可替代ghs.google.com的网站,有兴趣的可以试试。
- 添加一个ghs.etechl.com A记录到ghs.google.com的可用IP,其它子域名再CName到ghs.etechl.com,那改IP时也就方便多了。
- ghs.google.com的可用IP不多,正在逐渐减少,所以要做好随时撞墙的准备。
- Google Apps 还支持泛域名的哦!在你的应用的自定义URL里输入 * ,然后到DNS那里加入一个条泛域名解析记录到ghs.google.com即可。