页面

2011年7月6日星期三

如何拥有一个免费的二级域名

关键词:.tk, he.net, DNS, SLD, Google Apps, dot.tk

我在上一篇博客中介绍了一个无限邮箱地址的方案。这次再扩展一下,详细说说 .tk 这个免费二级域名。

网上常见的免费域名多是3级域名,如 example.co.cc,example.cjb.net。而 dot.tk 上面提供免费的2级域名,如 example.tk。虽然网上有些人说不靠谱,但我觉得拿来玩玩还是可以的。毕竟2级域名相比3级域名,还是有不少优点的:

1,DNS 解析快
    DNS 解析的过程可见 http://ningq.com/2010/11/dns_resolution.html
    该文中并没有说2级域名比3级域名解析快,但是很显然3级域名要比2级域名多解析一次,不信的话比较下这两个域名的解析结果就知道了:
    sina.com:http://www.dnsstuff.com/tools/traversal/?domain=sina.com&type=A
    www.sina.com:http://www.dnsstuff.com/tools/traversal/?domain=www.sina.com&type=A
    第一个两步就能获得最终 IP 地址,第二个需要三步。当然这仅限一般的情况。如果不同级别的域用的是同一级的 DNS,那就没差别了。如 7.qq.com 和 game.7.qq.com。

2,不容易被封锁
    gfw 能封锁整个 facebook.com 域,但总不能封 .com 吧
    前几天刚发生的事情,google 不再收录 .co.cc 下的域名。但 google 总不敢不收 .cc 吧
    百度。。。太2了,居然不收录整个 .tk 域。免费的域名缺点就是容易被*人弄滥。
    顺带提一提 .cn,做顶级域名做成 .cn 这样,不如去s。


有如此多的优点,如果你不是靠这个建站赚钱的话,那用 .tk 又有什么问题呢。

首先上 dot.tk 申请一个免费域名吧。这个 .tk 国家域似乎全权委托一家俄罗斯的公司经营。界面有中文版,就是翻译的太差,勉强能看懂。申请好之后,把 DNS 类型改为自定义 DNS,因为自带的 DNS 不支持 TXT 记录。建议用 he.net 家的 Name Server 作为 DNS Name Server。he.net 网站干净整洁,没有任何广告,而且是老牌子,解析服务稳定且迅速,支持 ipv6,提供 ipv6 隧道代理,支持管理 50 个域名,不限 DNS 解析记录数量,总之一个字:强大。

he.net 提供了5台 DNS 服务器,ns1.he.net ... ns5.he.net。我从全球50多个地方分别 ping 这5台服务器,发现 ns5 响应最快,其次是4、3、2、1。我们设置自定义 DNS 的时候,也按这个快慢顺序来设置吧。虽然没有找到证据表明会优先使用靠前的 Name Server,但是我把 ns5 放在最前面,感觉解析起来就是快。在 dns.he.net 设置一个 TTL=300 的动态 DNS 记录时,大约 5 秒,解析就生效了。

dot.tk 是乱排你的 Name Server 设置的。就算按5、4、3、2、1的顺序输入,它也会给你弄乱。不过它只在设置的时候乱一次,之后乱成什么就是什么了。我们可以一直点“下一步”,每点一次,它的顺序就会乱一次。等到排成5、4、3、2、1的理想形态时停下来就行了。我不喜欢折腾,只点出来5、4、2、3、1就懒得再点了。
ns
每点一次下一步,就会换一次顺序


接下来设置邮件的操作就可以参考我的上一篇文章了。只需注意一点,Google Apps 免费版不支持 .tk 域名。网上有破解之法,自己搜一搜吧(不是用别名的方法,从教育版的申请入口进去申请就行了)。


为了不被视为滥用域名、垃圾邮件站,我们需要设置好 SPF 记录和 DKIM 认证记录。还要保持 www.example.tk 是个活的网页。否则 .tk 管理者发现你申请了域名,却空着不用,就会收回域名的。网上有些人叫嚣自己的 .tk 域名被莫名其妙回收了,只怕就是这个原因。

对于不喜欢折腾的人,怎么保持 www.example.tk 的活动迹象呢。去 blogger 开一个博客,然后绑定 www.example.tk 域名,没事上去随便转几篇没有版权的文章就行了。因为我们主要是想用这个域的邮箱,又不是真拿这个域做博客什么的。

我今年3月份(我见过的许多博客,发帖时间都不显眼,有些直接就没有,看了让人火大。时间可是一篇文章很重要的一个属性)注册了一个4个字母的免费域名,然后在 Google Apps 里设置了一个超短的管理员账户(a@XXXX.tk),这个账户的电子邮箱地址一共才9个字符。这就是2级域名的好处。这么短的地址,就算是收费的也很难找了。什么?现在都用复制粘贴,长短没关系?我以前也注册过一个 18个字符@gmail.com 的邮箱,后来遇到必须要手动输入的场合,我就后悔不该搞这么长的了。

@w.cn 和 @9.cn 的免费邮箱本来也还行,但都是 .cn 域的,而且被几个**把3位数的都注册光了。

@g.cn 是 google 的域名,可惜不提供电子邮件服务(SPF 记录里是“v=spf1 -all”)。否则 a@g.cn 该有多拉风啊。

使用Facebook社交插件参与评论:

2011年7月3日星期日

如何拥有无限个电子邮箱地址

关键词:Gmail, Google Apps, co.cc, cjb.net, dot.tk, E-mail, alias, 不过滤垃圾邮件

本文介绍一个方案,可以免费拥有无限(实际中虽然不是无限,但远远超过1010)个电子邮箱地址。本文只说重点,各环节的细节做法不清楚的话都可以另行在网上查到。

一般有了一个类似 foobar@gmail.com 的 Gmail 邮箱后,就相当于拥有了无限个邮箱地址。因为所有发送到 foobar+*@gmail.com(* 代表任意符合邮箱地址规范的字符串,中间的 + 号不能缺)的邮件都会被投递到 foobar@gmail.com 中,并且能保持原始收件人地址。比如发送到 foobar+co.cc@gmail.com 的邮件,查看邮件的详细信息时,“发送至”栏会保持 foobar+co.cc@gmail.com 这个地址。我们可以据此写一些过滤器,以区分不同用途的邮件。

但是,树大招风。这个技巧用的人多了,为了防止滥用,许多网站纷纷禁止用户输入的邮箱地址中包含 + 号,有些甚至禁止 . 号。所以我接下来介绍另外一种无限邮箱地址方案。

1,申请一个免费域名。www.co.cc 提供的免费域名对 Google Apps 很友好,设置也很方便。以下以申请到 example.co.cc 免费域名为例。

2,用上面申请到的域名注册免费 Google Apps 服务,并设置管理员账户为 admin@example.co.cc。这一步我说的简单,实际中步骤很多。网上很多这方面的文章,搜一下就有。co.cc 官方也提供了针对 Google Apps 的设置方法,见 http://www.co.cc/google_apps/google_apps.php(英文),照做即可。为了避免从该域(example.co.cc)发出的邮件被其他邮件服务器当成垃圾邮件而拒收,建议在 DNS 服务器上添加 SPF 记录和 DKIM 认证记录。设置完成之后等上1、2天让 DNS 设置生效。

3,登录进 Google Apps 管理面板 https://www.google.com/a/cpanel/example.co.cc/Dashboard,在管理面板的“设置”-->“电子邮件”中的“无限别名地址”处,将“如果收到的电子邮件不符合任何现有地址:”设置为“将电子邮件转发给:”、“admin@example.co.cc”。这样所有发送到 *@example.co.cc 的邮件就都会投递到 admin@example.co.cc 了。也就是说,我们拥有了以 @example.co.cc 为后缀的所有邮箱地址了。

4,以上步骤基本就能满足大部分人的需求了。不过我们还可以继续提高一下该方案的易用性。因为我们已经有一个主 Gmail 了(foobar@gmail.com),不想在两个 Gmail 之间切来切去。而使用 pop 方式收信的话会漏掉垃圾邮件。对于没有受到垃圾邮件困扰的人来说,Gmail 的垃圾邮件过滤系统不仅是鸡肋,而且经常过滤掉正常邮件。接下来我们在 admin@example.co.cc 中设置过滤器,无视垃圾邮件过滤系统而将所有接收到的邮件以转发的形式转发到主 Gmail 中。

5,这一步参考了 http://getfreeware.net/2008/06/08/gmail-multi-accounts-management.html,并且经过我自己测试,正常邮件和垃圾邮件都成功转发过来了。在 admin@example.co.cc 中创建一个过滤器,“包含字词”处填“in:inbox OR in:spam”(网上好多文章说用“is:spam”,但是我测试了不成功,而且 Gmail 官方帮助文档中也确实没有这种语法),其余留空。在下一步设置操作时,选择将邮件转发给 foobar+forward_from_admin_at_example.co.cc@gmail.com,并选中“删除邮件”。

6,这样过滤器就设置好了。之后所有接收到的邮件都会被立即转发给 foobar@gmail.com,并且保持原始收件人地址。如果使用 pop 方式的话,再快也要等 Gmail 轮询(一般一小时查询一次)。转发就不一样,几乎是同时,邮件就能到达 foobar@gmail.com。

7,但我们还是要设置一下 pop 收信,制造一个 admin@example.co.cc 有频繁 pop 活动的假象,避免长期不登录账户生灰。pop 服务器是 pop.gmail.com,端口 995,用户名 admin@example.co.cc,密码照填,然后选中“始终使用SSL”即可。

8,即使想使用 Gmail 的垃圾邮件过滤系统的人,也建议用上述方法将垃圾邮件先转发过来,再由主 Gmail 账户统一过滤。要区分主账户邮件和转发的邮件的话,创建一个过滤器,如果包含字词“from:(@example.co.cc) OR to:(@example.co.cc)”则应用一个标签就行了。

9,以上设置就基本好了。想测试一下收信效果的话,不要用自己的主 Gmail 邮箱往 @example.co.cc 域发邮件进行测试。找一个和主 Gmail 账户没有 pop 或者转发关系的邮箱来测试吧。

10,说了这么多,其实有更简单的方案可以一步搞定上面的所有步骤,比如 cjb.net 方案。它都不用申请 Google Apps,更不用设置域名解析。免费的 cjb.net 域名自带免费空间、简易域名解析和 pop 服务器,甚至还支持动态DNS,但是没有 smtp 服务器。申请一个类似 example.cjb.net 的免费域名后,直接就能设置将所有发往 @example.cjb.net 域的邮件转发到注册邮箱。如今新注册的免费 Google Apps 只支持最多 10 个用户了,如果不想用 Google Apps 的话,可以试试这个方案。不过因为邮件会经过它的 pop 服务器,垃圾邮件也会被它直接过滤掉而没有任何提示。而且因为没有 SPF 记录,转发目的地的邮件服务器很可能拒收从 example.cjb.net 转发来的邮件。当然 cjb.net 允许你设置外部 Name Server,我们完全可以把它当 co.cc 来同样处理。有关垃圾邮件的这一点我没有测试,全凭想象,大家可以试一下。
CJB.NET
cjb.net 设置界面的一个截图

11,这一步仅限 Google Apps 方案。如果还想用 admin@example.co.cc 作为发件人进行发信的话,在主 Gmail 的“账户和导入”中点击“从其他地址发送邮件”添加一个发信人即可。按向导提示的填写,提示选择 SMTP 服务器时,不要选择“通过 Gmail 发送”,而应该选择“通过 example.co.cc SMTP 服务器发送”,并填写 SMTP 服务器为“smtp.gmail.com”,端口改为 465,其余默认。Gmail 会发一封验证邮件到 admin@example.co.cc(然后验证邮件被立即转发回来了),按提示进行验证后,以后写信时就可选择使用 admin@example.co.cc 作为发件人了。用这种方式发信,信件除了会在主账户的发件箱中保存备份,也会在 admin@example.co.cc 的发件箱中保存备份。之所以选择用 example.co.cc SMTP 服务器而不是 Gmail 服务器发送,是为了隐藏真正的发信人地址(foobar@gmail.com)。如果用 Gmail 服务器发送的话,对方收到的邮件表面上显示的发件人是 admin@example.co.cc,但如果查看原始邮件的话,就能看到真正的发件人 foobar@gmail.com 了。
查看原始邮件Gmail 中查看原始邮件的方法

注意 example.co.cc 免费域名是有期限的,需要每年续期一次。example.cjb.net 也需要至少每 90 天登陆一次 shell(83天没登陆会发邮件提醒)。还有一个二级域名方案 example.tk,也有一些限制。而且因为是免费的,所以不建议将这些邮箱用在需要长期使用的场合。毕竟这些服务不是 google,amazon 之类大厂的服务,不能保证一直稳定。而且申请的域名今年免费,到明年续的时候说不定就开始收费了呢。

但是我们不用担心 google 的免费服务,完全值得信赖。

使用Facebook社交插件参与评论:

2011年6月21日星期二

向blogger帖子页面嵌入facebook社交评论插件

关键词:facebook, social plugins, sns, comment, blogger, blogspot, 评论, 社交插件

 

facebook推出社交插件有一段时间了。见http://developers.facebook.com/docs/plugins/。其中评论插件比较有吸引力。blogger内置的评论工具不支持对评论进行回复,看着其他一些独立博客的评论表单功能挺强大,有点眼红了,所以试了试这个facebook的评论插件。

 

按说我是个不喜欢折腾的人,blogger的html模板以前从来就没有动过。更不会去想弄虚拟主机,独立博客,独立域名之类的事情。这次看上面这个插件实现起来也不麻烦,所以试了一试。以下操作是参考插件的官方介绍页面http://developers.facebook.com/docs/reference/plugins/comments写的。按官方介绍做下来,只能给整个网站做一个评论表单,跟留言版一样了。我们需要每个帖子有各自的评论表单,这就需要向插件提供每个帖子的url。blogger的模板提供了帖子url,用 data:post.url 即可得到。以下是详细步骤。

 

1,备份blogger的模板html文件。

2,修改这个html文件,找到 data:post.body 的地方,在其后添加几行:

<p/><h3 class='post-title entry-title'>使用Facebook社交插件参与评论&#65306;</h3>
<div id='fb-root'/><script src='http://connect.facebook.net/zh_CN/all.js#xfbml=1'/>
<fb:comments expr:href='data:post.url' num_posts='10' width='635'/>

其中各参数的意思自己揣摩,或者看上面的官方文档。

3,基本上这样就可以了。保存模板看看效果吧。如果已经满意了,就不必看后面几步了。

未登录fb时的样子:

未登录fb状态除了facebook,还可以用其他账号进行评论。

登录fb后的样子:

登录fb状态

该插件自动读取浏览器的session中处于登录状态的facebook账号信息

 

4,如果想对评论进行审核,就需要一个facebook账号作为评论审核的管理员。找到这个账号的facebook id,按如下格式加在html模板的<head>标签下面:

<meta content='你的facebook id' property='fb:admins'/>

在管理员的fb登录状态下,当有评论时是这样子的:

审核菜单

管理员可以隐藏某个评论,也可以禁止某个用户。

 

5,喜欢折腾的人可以再给这个评论插件专门申请一个facebook app,记下这个app的id。关联app之后,评论管理功能会方便很多,可以在http://developers.facebook.com/tools/comments统一管理所有的评论。继续修改模板html文件,在<head>后面再加一行:

<meta content='你的facebook app id' property='fb:app_id'/>

保存后点击插件右上角的“设置”按钮,没有设置appid时,这个设置菜单很单调,并且会提示你申请app。设置appid后则是这个样子:

设置菜单

刚设置完appid可能暂时不会生效,耐心等他一两天再来看看吧。

 

6,以上设置就全部完成了。目前我发现的两个问题,一是我即使设置了评论对所有人可见(Make every post visible to everyone by default),测试时还是只有评论者的fb好友(博主除外)才能看见评论者的评论。评论者的fb隐私设置中把相应权限改为“所有网民”也是一样。二是新评论通知会发到管理员的fb通知系统中。管理员需要登陆进fb才能知道有新的评论。但是不知道fb用的是什么通知机制,因为有时候收不到通知。

 

另外,设置完成之后,可以关闭blogger的默认评论系统。但是建议保留。毕竟会有人不想在别人的博客里留下可以识别fb身份的评论。

使用Facebook社交插件参与评论:

2011年6月7日星期二

有关一场风波的一些记忆

关键词:1989

 

小时候(1990年代)曾听到大人们谈论过一些有关此事的话题。现在还记得一些,虽然时间、地点、人物全都记不太清了,总要把能记住的一些事写下来。

 

就只记住了一段话,当然时间已经很久了,大意不错,细节可能有不太准确的地方:

有个士兵拿枪乱扫,打死了很多人,后来奖了一块金手表。有个士兵,因为学生里有自己的亲戚,不敢乱开枪。所以闭着眼睛打一枪,停一停,再打一枪。

现在看来,这段话是有一些民间加工的。

使用Facebook社交插件参与评论: