替代ghs.google.com的方法

猎武神's  213点击  6 条评论

话说Google Apps中,又一个个性化功能——“更改网址”。要使用这个功能,需要把相应的子域名CNAME到ghs.google.com这个地址。然而由于“墙”的存在,国内用户可以说跟这个功能绝缘了。

最近我实在厌烦了URL转向到邮箱,抱着试一试的心理,Google了一下,没想到还真让我找到了前辈高手给出的解决方法。

Matrix Chou在他的博客提供了一个可以替代ghs.google.com的地址,原理是:

利用dns在国外的域名服务商,比如yahoo,然后切换不同国家或地区的代理来tracerout出相对应的ghs的ip地址,找到未被墙的ip地址,然后去yahoo做一个到此ip的A记录,然后把这个A记录对应的域名作为ghs用 >>原文

按照他所说的原理,只要通过代理找到ghs.google.com所指向的未被“墙”的镜像IP地址,就能绕过顺利翻墙了。

我为了节省时间,直接使用法国的Linkideo VPN翻墙,然后直接ping ghs.google.com。得到的IP地址与Matrix Chou给出的ghs.sinoestate.com的一样,都是66.249.91.121。查询后发现该地址没有被“墙”,所以,做ghs.leafz.net的A记录到66.249.91.121,再做mail、docs、cal等子域名的CNAME到ghs.leafz.net,OK,咱们又能享受方便简短的子域名了。

加勒比小海盗

杂谈  96点击  2 条评论

可爱的杰克船长……想捏两把……

人生三大陷阱

心晴  72点击  发表评论

一个农夫进城卖驴和山羊。山羊的脖子上系着一个小铃铛。三个小偷看见了,一个小偷说:“我去偷羊,叫农夫发现不了。”另一个小偷说:“我要从农夫手里把驴偷走。”第三个小偷说:“这都不难,我能把农夫身上的衣服全部偷来。”

第一个小偷悄悄地走近山羊,把铃铛解了下来,拴到了驴尾巴上,然后把羊牵走了。农夫在拐弯处四处环顾了一下,发现山羊不见了,就开始寻找。

这时第二个小偷走到农夫面前,问他在找什么,农夫说他丢了一只山羊。小偷说:“我见到你的山羊了,刚才有一个人牵着一只山羊向这片树林里走去了,现在还能抓住他。”农夫恳求小偷帮他牵着驴,自己去追山羊。第二个小偷趁机把驴牵走了。

农夫从树林里回来一看,驴子也不见了,就在路上一边走一边哭。走着走着,他看见池塘边坐着一个人,也在哭。农夫问他发生了什么事。

那人说:“人家让我把一口袋金子送到城里去,实在是太累了,我在池塘边坐着休息,睡着了,睡梦中把那口袋推到水里去了。”农夫问他为什么不下去把口袋捞上来。那人说:“我怕水,因为我不会游泳,谁要把这一口袋金子捞上来。我就送他二十锭金子。”

农夫大喜,心想:“正因为别人偷走了我的山羊和驴子,上帝才赐给我幸福。”于是,他脱下衣服,潜到水里,可是他无论如何也找不到那一口袋金子。当他从水里爬上来时,发现衣服不见了。原来是第三个小偷把他的衣服偷走了。

这就是人生三大陷阱:大意、轻信、贪婪。

Firefox加速技巧

杂谈  78点击  发表评论

Firefox 的地址栏中输入 about:config,开始设置:

network.http.pipelining
在 Filter 中输入 network.http.pipelining,双击赋值为 true,默认为 false。如果没有找到这个键值,可以右键新建一个 Boolean,把她赋值为 true 就 OK 了。

激活这个键值之后,Pipelining同时发出成倍数的连接请求,从而达到提升连接速度的效果。网络上的大多数网站都是基于 HTTP 协议,而 HTTP 1.1可以支持多线程的连接请求,通过这个操作可以减少 Firefox载入网页的时间。

network.http.pipelining.maxrequests
在 Filter 中输入 network.http.pipelining.maxrequests,双击并赋值为 8,默认键值为 4。

network.http.proxy.pipelining
在 Filter 中输入 network.http.proxy.pipelining,双击并赋值为 true。

这两条优化的道理同上。

network.dns.disableIPv6
在 Filter 中输入 network.dns.disableIPv6,双击并赋值为 true。

IPv6 把 IP 地址由 32 位增加到 128 位,从而能够支持更大的地址空间,当用户在终端向一个 IPv6-capable DNS服务器发送连接请求时,也许服务器端会错误的返回给用户一个 IPv4 地址。而 Firefox 可以对这一切明察秋毫,不过在 Firefox纠错的同时也必然会导致信号的延迟,所以这里我们把她赋值为 true,禁用掉她。

content.interrupt.parsing
右键新建 Boolean 值,键名为 content.interrupt.parsing,赋值 true。

默认这个键值并不存在。我们激活这个键值之后,当目标网页载入时,Firefox会根据一定频率打断解析的过程,不断的向用户反馈她所收集到的网页信息,有点像流媒体的意思。这时的 Firefox很聪明,不会一根筋的一直钻牛角。

content.max.tokenizing.time
右键新建 Integer 值,键名为 content.max.tokenizing.time,赋值 2250000。

这个键值的作用其实就是指定一个循环事件的处理周期,这里的单位是微秒,要是我没有算错的话。理论上当我们将这个值取的越小,网页就会从视觉上载入的越流畅,因为 Firefox会在很短的单位时间里反馈回解析到的网页信息。可是这样无疑延迟了网页整体载入的时间,所以在这里我们不妨将这个周期取的大一些,理论上可以加速网页的载入。

content.notify.interval
右键新建 Integer 值,键名为 content.notify.interval,赋值 750000。

载入一个网页其实也是一门很大的学问。让我们来放一个慢动作,我们姑且先把在终端第一次收到的网页信息很不专业的叫做预载入页面吧,这个页面有可能是不完整的图片或者文字,或者别的媒体文件。从我们第一次向远端主机发出连接请求到我们在终端收到这个预载入页面花费的时间,就是这里我们要定义的键值。理论上当我们将这个时间设置的很低时,肯定会更快的拿到所谓的预载入页面,可这是一种杀鸡取卵的做法,这样无形中反而增加了我们整体页面的载入时间。按照官方的说法,低于 100,000 将会降低 Firefox 的性能,那好吧,那我们把她彪到 750000 吧。

content.notify.ontimer
右键新建 Boolean 值,键名为 content.notify.ontimer,赋值 true。

为了使我们上面设置的 750000 微秒生效,还需要把这个键值激活。只有这两个键值配合,才会起作用。

content.notify.backoffcount
右键新建 Integer 值,键名为 content.notify.backoffcount,赋值 5。

这个键值控制 Firefox的内置计数器在归零之前载入页面返回的次数。我们将目标网页分成好多个部分进行下载,每下载完一个部分,计数器归零一次。-1 就是没有限制,值为 0时这项功能被禁用。这里我们将她设置成 5,当返回的次数达到五次而这部分网页还没有完全下载完时,那么剩下的没有下载完的网页内容将不会再按照我们预告设置的周期,像之前的五次那样一点一点的搬运回来,而是会一次性的下载完。也就是说在这个部分的网页下载过程中,Firefox 一共向我们反馈了 6 次信息,前 5次的时间间隔是我们在上面的键值中设置的周期 2250000 微秒,而第 6次也就是最后一次则没有时间限制,什么时候把剩下的下完了,什么时候反馈回来。

只有当我们在上面提到的 content.notify.ontimer 键值为 true 的时候,这里的设置才会生效。

content.switch.threshold
右键新建 Integer 值,键名为 content.switch.threshold ,赋值 750000,也就是四分之三秒。

在前面我们提到了一个键值 content.interrupt.parsing,通过激活她实际上我们可以在载入页面的过程中跟 Firefox产生互动,毕竟我们每一个人的心里都充满了爱。把 content.interrupt.parsing 激活后当页面载入时 Firefox会有两种操作模式:高频和低频中断模式。使用高频模式时,网页回馈的频率也很高,我们坐在显示器前看到的网页载入过程也会更加的平滑。低频时网页回馈的频率相对比较低,可是这时反而加快了网页载入的时间。当我们移动鼠标或者触击键盘时,高频模式被激活。在经过某一段时间我们没有碰鼠标和键盘,程序没有接到鼠标和键盘发出的任何指令时,Firefox 就会自动进入低频模式工作,而这所谓的某一段时间,就是我们这里要指定的值。

nglayout.initialpaint.delay
右键新建 Integer 值,键名为 nglayout.initialpaint.delay,赋值 0。

这里实际上延迟了整个网页的显示速度,但是因为用户更喜欢在整个网页完全截入之前就开始阅读网页 (就像流媒体那样),所以在这里可以把值调为零,加速用户阅读网页的速度,有时候阅读速度和载入速度并不是成正比的。

耐人寻味的人生哲理

守望幸福  101点击  9 条评论

1.爱加爱等于非常爱,爱减爱等于爱的起点,爱乘爱等于无限的爱,爱除爱等于惟一的爱。

2.对的时间遇对的人,是一生幸福;对的时间遇错的人,是一场心伤;错的时间遇错的人,是一段荒唐;错的时间遇对的人,是一声叹息。

3.铁饭碗产真实含义不是在一个地方吃一辈子饭,而是一辈子到哪儿都有饭吃。

4.所谓单相思,就是你把她/他放在心里面,她/他把你放在心外面。

5.听人说话只信一半是精明,知道哪一半可信才是聪明。

6.男人的拿手好戏是撒谎,女人的拿手好戏是撒娇。

7.老板着脸的人叫老板,总是裁人的人叫总裁。

8.嘴巴甜一点,脑筋活一点,行动快一点,效率高一点,做事多一点,说话轻一点,微笑多一点。——久经考验的上班族总结出来的成功之道。

9.情如鱼水是夫妻双方最高的追求,但是我们都容易犯一个错误,即总认为自己是水,而对方是鱼。

10.男人的年龄由自己来感觉,女人的年龄由别人来感觉。

11.当别人拒绝你的时候,或许可以试着用真诚和机智去打动他。

12.我之所以成功,或许就是因为我是抓住了万分之一的笨蛋,因为我凡事往好处想,别人以为我是傻瓜,但万分之一的可能毕竟意味着有可能。

13.要想成功,就要学会放弃,只有放弃眼前利益,才能获得长远大利。

14.诺言可以带来朋友,信守诺言才能维持友谊。

15.一扇幸福的门关闭的时候,另一扇就会打开,但我们经常长久地凝视那扇关闭的门,而忽略了那扇为我们打开的门。

16.朋友像棉被,真正使你温暖的是你自己的体温。

17.要成功,你需要朋友;要非常成功,你需要敌人;要真正成功,你需要战胜自己。

18.爱一个人就是在拔通电话时,突然不知道要说什么,才知道原来只是想听听那熟悉的声音,原来真正想拔通的,只是自己心底的一根弦。

19.把每一个黎明看作是你生命的开始,把每一个黄昏看作是你生命的小结。

20.无论什么时候打电话,拿起话筒的时候请微笑,因为对方能感觉到!

21.知道自己能够做些什么,说明你在不断地成长;知道自己不能够做些什么,说明你在不断地成熟。

22.再直的筷子,插进水里也是弯的。

23.失恋之所以痛苦,是因为对方的心收了回去,而自己的心还不肯回来。

24.努力地工作,就像不苛求回报一样;真诚地去爱,就像从来没有受过伤害一样;投入地跳舞,就像没有人在一旁看着你一样。这样的生活,肯定可以给你带来快乐。

25.口袋里无钱,存折里无钱,但心里装满钱的人最苦;口袋里有钱,银行里有钱,但心中无钱,此为大福也!

26.摆脱孤独的最好方法就是喜欢孤独;时间抓起来是黄金,抓不起来就是流水。

27.活着就是一切,活着就是乐,活着也有苦,苦里却也有乐;就如一片树叶,我该生的时候,我生气勃勃地来,长我的绿,现我的形,到该落的时候了,我痛痛快快地去,让别的叶子又从我的落疤里新生。

28.生命并非一个发现的过程,而是一个创造的过程。你并不是在发现你自己,而是在重新创造你自己。所以,别急于发现你是谁,而该急于决定你想做谁。

29.爱情是音乐:初恋是轻音乐,热恋是摇滚乐,结婚是通俗音乐,离婚是流行音乐。

30.一位女士靠在邻座陌生男士的肩上睡着了,这是一个故事;一位男士靠在邻座陌生女士的肩上睡着了,这是一个事故。