用数据说话,看Google怎样被陷害(转)

近日,央视爆出谷歌搜索出现大量黄色词条的信息。一个引起舆论强烈反响的例子是,在谷歌搜索“儿子”竟然也能搜索到黄色词条。那么,事情是怎么发生的呢?

下面我们来看谷歌是如何被陷害的:众所周知,谷歌关键词提醒是计算机自动摘取最近最流行的关键词来生成的。于是某些人利用这一点,大量在谷歌上搜索黄色词汇,陷害了谷歌。
在谷歌搜索趋势图,Google Insights for Search,以及一些第三方的统计数据中,可以看到:

在央视曝光谷歌之前7天:
1.有人故意在谷歌大量搜索黄色词汇,使单日黄色词汇搜索量同比猛增 5950% ,单月
搜索总量与上月相比增幅达数千倍
2.这些搜索量100%来自北京
3.这些搜索量几乎呈线性急剧上升,理论上这些瞬时搜索量应该服从正态分布并是突发性
的,换句话说,这是有人故意为之。
以下再附上几张类似图表,请注意峰值全部在6月17日,即CCTV节目(6月18日)播出的前一天。

(全年统计)
(本月统计)

为做对比,说明搜索引擎的统计应该是什么样子,我来附上一张对关键词“天气预报”的搜索统计图表,从图中我们可以看到,全年搜索量应该大致呈均匀分布,考虑到搜索引擎的普及使用,会有一个逐渐升高的趋势,但绝不可能出现在某个月份呈直线上升的情况。
那么,还有一种可能,是不是北京的人们在6月份,由于夏天到来,荷尔蒙分泌过多,导致对“儿子母亲不正当关系”这样的黄色词汇搜索过多呢?我们且来看这张对关键词“日本女优”的搜索统计图表,
可以看到,对关键词“日本女优”的搜索量全年大致呈均匀分布,甚至在近期有下降的趋势。那么,这种近期全民荷尔蒙分泌过多的情况也应该被排除了。并不是说对 所有黄色信息都有大量的搜索需求。搜索数量呈急剧上升的关键词,只局限在媒体大书特书的几个词汇之中,特别要注意的是其急剧上升阶段和峰值都在媒体报道之 前,显然,这不是自然的结果,那么,答案是什么呢?是谁让谷歌如此低俗?

以上内容感谢 http://goo.gl/f0i6z 保存
原文内容 http://blog.sina.com.cn/s/blog_60676a3f0100e0xk.html 已被删除
http://www.javaeye.com/news/8465-data-words-look-at-how-google-was-set-up-carried-sina 已被删除
更多内容:http://wordpress.lixiaolai.com/archives/6835.html

开源

Q:什么是开源?

       A:开源,意为开放源代码,由Bruce Perens(曾是Debian的创始人之一)定义如下: 

          1)自由再散布(Free Distribution):获得源代码的人可自由再将此源代码散布。

           2)源代码(Source Code):程式的可执行档在散布时,必需随附完整源代码或是可让人方便的事后取得源代码。

          3)衍生著作(Derived Works):让人可依此源代码修改后,在依照同一授权条款的情形下再散布。

          4)原创作者程式源代码的完整性(Integrity of The Author’s Source Code):意即修改后的版本,需以不同的版本号码以与原始的程式码做分别,保障原始的程式码完整性。

          5)不得对任何人或团体有差别待遇(No Discrimination Against Persons or Groups):开放源代码软件不得因性别、团体、国家、族群等设定限制,但若是因为法律规定的情形则为例外(如:美国政府限制高加密软件的出口)。

           6)对程式在任何领域内的利用不得有差别待遇(No Discrimination Against Fields of Endeavor):意即不得限制商业使用。

           7)散布授权条款(Distribution of License):若软件再散布,必需以同一条款散布之。

           8)授权条款不得专属于特定产品(License Must Not Be Specific to a Product):若多个程式组合成一套软件,则当某一开放源代码的程式单独散布时,也必需要符合开放源代码的条件。

           9)授权条款不得限制其他软件(License Must Not Restrict Other Software):当某一开放源代码软件与其他非开放源代码软件一起散布时(例如放在同一光碟片),不得限制其他软件的授权条件也要遵照开放源代码的授权。

          10)授权条款必须技术中立(License Must Be Technology-Neutral):意即授权条款不得限制为电子格式才有效,若是纸本的授权条款也应视为有效。

中国为什么不能成为完全的市场经济国家?

中国为什么不能成为完全的市场经济国家?

作者:袁伟东
今天,商务部发言人在新闻发布会上对欧盟不承认中国完全市场经济地位表示失望,发言人沈丹阳说:“经过30年的改革开放,中国已经完成了由计划经济向市场经济的转轨,但是欧盟至今不承认中国的完全市场经济地位,中方对此非常失望。”其实,中国发出这样的失望之声已经数不清有多少次了,如果我们不从自身的问题去找原因、去解决问题,那么这样失望的声音恐怕要永远喊下去。我们政府有意发出这样的声音似乎是在暗示百姓:欧盟不仗义。你欧洲经济危机,我们中国拿出大把美元相救,可在承认完全市场经济地位上却百般刁难中国,道义何在?其实,我们的政府从来没有告诉百姓欧盟为什么不承认中国。

早在2007年,中国和欧盟在芬兰的赫尔辛基举行双边会谈,在会谈结束后,欧盟主席巴罗佐对记者表示:“在确定反倾销价格和成本时,这些因素都是相关的。一旦中国达到了这些标准,我们一天也不会多等。” 巴罗佐所谈的标准就是中国要求欧盟承认中国完全的市场经济国家而欧盟提出的要求中国达到的标准。

长期以来,中国一直要求欧盟承认其完全市场经济地位,但这一要求在峰会上仍被忽视。那欧盟提出的到底是什么标准呢?共有四条:其一是政府的影响力;其二是会计准则,其三破产法,其四金融服务领域的改革。巴罗佐所提的“四条标准”,与美国承认中国完全的市场经济国家所提的“标准”虽不完全相同,但基本精神是类似的,这就是要求中国经济的进一步规范化和自由化。在这四条标准中,会计准则和破产法属于真正的“技术指标”,是刚性的,我们现在正在努力实现。但另两个问题却是软性的,尤其是“政府的影响力”问题,要达到欧盟心目中的“标准”恐怕很难。因为这不是一个能不能做到的问题,而是一个愿不愿意做的问题。

“政府的影响力”标准就是要求政府减少对经济的影响力,就是让经济在公平原则的基础上自由的发展。其实这是符合经济规律,并有利于经济在健康的轨道上发展的措施。既然是好的,那我们中国为什么不愿意去做呢?

经济学家吴敬琏老先生早前在《财经》杂志撰文指出:中国自改革以来,在政府仍然在资源配置中居于主导地位条件下形成的变通性制度安排,对企业家才能的配置产生了双重影响;它即使企业家能够发挥自己的才能,从事生产性的创新活动,推动了市场形成和经济成长,同时又是寻租腐败等非生产性活动泛滥的根源所在。我在一次西部开发研讨会上同吴老先生有过交往,深刻地感悟到他对中国经济的担忧。在中国做企业,若不跟当地政府搞好关系,那什么也做不成,这已是众所周知的事,就连那些外资企业都渐渐入乡随俗,知道了跟政府“公关”的重要性。在中国,企业家把企业做的再大,你也不是真正的“老大”,真正的“老大”只能是政府。这是吴老先生说的“企业家才能的错配”,同时又造成了太多的寻租腐败的机会。而这一切,皆因为中国在“引进市场的同时,仍然在很大程度上保留了政府的主导作用”,“政府依然掌握着大量资源的分配权”,企业家不得不为获得这类资源进行非市场的激烈竞争。

吴老先生的分析一针见血的指出,解决问题的唯一办法就是政府要退出市场,由市场而不是由政府来主导资源的配置。政府一天不退出,中国就一天跟“完全的市场经济”无缘,企业家也一天成不了真正的企业家。

其实,中国不乏懂得市场经济的学者和有识之士,但他们的意见和建议为什么得不到真正的重视和采纳呢?政府为什么就不愿意退出这个已经抹了自己一身屎的“资源配置权”呢?我们的政府为什么要把一切都置于自己的严格控制之下呢?要把这些说明白,恐怕就要从政治体制上去找答案了。

—— 原载: 共识网

说说blogger.com的ftp发布

1.为什么写blogger.com的ftp发布这样一片日志?
今天写一篇比较类似教程的文章,其实早就有人做过这方面的工作了。只是我当初Goolge blogger ftp的时候并没有看到能立马让我眼前一亮的答案。弄得我一直认为ftp发布是件很神秘的事情。后来,我为用上了blogger的ftp发布而兴奋不已。在blogspot再次被封了以后,我觉得blogger.com的ftp发布功能简直就是为China GFW量身定做的。另外,zola的抓虾教程促使我也开始写这篇blogger.com的ftp发布。
2.什么是blogger.com和blogspot?
简单的说,blogger.com是Google购买的一个产品。在国外,blogger拥有超多的用户,非常流行。除了稳定、快速外这还和它强大的功能有关。那么blogspot是什么呢?这么说吧,blogger.com是用户登陆和管理blog的地方。而blogspot是blogger.com提供给用户访问自己blog的域名。比如:username.blogpsot.com。
3.关于blogspot的被封。
这里就要牵涉到GFW了,我记得好像是Great FireWall的缩写?也就是中国为了加强对互联网的控制而进行过滤的一个工具。这个东西很恼火,搞得很多国外的网站都上不去了。我们现在所说的blogger.com被封其实只能说是blogspot被封。除了你不能通过user.blogspot.com访问自己的blog外一切都是正常的。就是说,你在blogger.com写的日志都被保存了起来,如果哪天blogspot恢复,你一样可以访问到。如果哪天blogger.com也被封了,不怕死的就通过代理登录blogger来进行ftp发布吧。或者干脆就把这害人的blogger.com踢开算了!最近Google在中国遇到的麻烦也真是够多的,只能祈祷Google尽快把公关搞好了):
4.如何解决GFW造成的不能访问blogspot问题?
如果你还想访问原来blogspot的域名那只能通过
编辑windows\system32\drivers\etc\hosts 文件,然后加入72.14.219.190 xxx.blogspot.com ,其中xxx是你的用户名,即可访问到你自己的BlogSpot了。
但是,不用你电脑的人除了通过同样的方法或者代理以外也是看不到的。GG派最近在搞一个blogger的host文件列表,也就是很多人来一起把自己的用户名添加进去,大家都下载这个文件就可以访问那些活跃的blogspot用户了。精神是在可嘉!
另外一种比较好的方法就是FTP发布了。要求其实也很简单:1.你拥有一个国际域名(.cn域名现在只要1块一个,续费也和其他域名差不多,至少是便宜了一年。)2.拥有一个支持ftp上传的空间,大小不小于10M。如果你想找这种免费的空间还是很多的,像pkblogs,sitesled,当然你也可以在网上去找其他的。应该还算好找的。有了这两个条件你就可以进行blogger的ftp发布了。这样,不管以后blogspot是否被封。你只要保证你的域名和空间能用就能访问到自己的blogger了。
5.关于blogger.com的ftp发布
其实很简单,如果你用过ftp上传文件就能懂这个东西。在blogger的后台有一个选项,你只要填入你的ftp空间用户名和密码还有你希望上传你的blogger到哪个文件夹,并且将域名绑定到这个空间。你就可以在每次发布日志的时候将对应的文件写到你得这个空间的对应目录了,同时在blogger.com那里也会为你保存你的日志。但是值得注意的事,这个时候其实决定你的访问速度的是你的那个空间。因为你的国际域名绑定到了那里,你的文件也上传到了那里。blogger.com的后台扮演了一个管理和维护的角色,我想这就是blogger.com的高明之处吧。因为Movable Type和Wordpress等独立blog程序的自由度对blogger.com产生了很大的影响。blogger.com的ftp发布满足了很多人想要使用自己域名和服务器来自己掌握blog的要求,同时blogger.com的访问量会保持不变。这是一个两全其美的办法,有人喜欢Movable Type,有人喜欢wordpress,当然也有人对blogger.com的ftp功能爱不释手。
总结了blogger几个优点和缺点:
1.blogger.com会一直帮你保存数据,更换空间和域名时只要在blogger.com里重新发布即可,非常的方便。
2.空间要求很低,只要支持绑定域名和ftp,还支持html就可以搞定。
3. blogger后台对细节的一些划分还是比较完善的,尽管最新日志、最新评论、摘要等功能并不能选择。但你能通过搜索blogger hack来解决这些,在互联网上的很多blogger用户为你提供技术支持。
4.不好的地方就是你在后台做修改就要发布整个blog,有点繁琐。如果你只是修改模板的一些经常要更新的部分比如:链接之类的,完全可以事先通过使用javascript来控制,这样你就只要修改Js代码而不用重新发布了。
5.据说用ftp发布后,你原来的blogspot域名就可能被被人注册。其实你完全可以再建一个blogger,申请了这个名字):
6.FTP发布要填的选项
在blogger.com后台的发布选项里,你应该能很快的填入对应的资料。
需要注意的几点:
1.如果你把ftp路径留空,当你用这个ftp用户名和密码登录这个空间后,那blogger的文件就会存放在这个位置。如果你在里面建立一个文件夹叫做blog,你想在这个里面放置你的blogger。那你就把ftp路径填为/blog,如果你想再往里建立一个blog文件夹来存你的blogger,那就填为/blog/blog。
2.ftp已经可以上传了,那怎样访问呢?在blogger.com的后台你要设置一个博客URL选项,这个URL是怎样的呢?
a.先确定你的域名xxx.abc.com访问你空间的哪个文件夹。
b.确定存放blogger的那个文件夹和你绑定的域名访问的那个文件夹之间的关系?比如说,你将blogger文件夹放在根目录,而将域名解析也在根目录。那你的ftp路径就是留空的,你的博客url就是要设置成你解析到根目录的域名xxx.abc.com(只要解析到根目录的都能访问你的blog首页,)但是你的文章的永久链接地址就是由你在后台制定的博客url来决定了。如果你的域名解析到了根目录而想将blogger放在根目录的blog文件夹,那你就在ftp里填/blog,博客url就变成了abc.com/blog。当然,你完全可以通过把域名直接绑定到blog文件夹来让博客url变成abc.com 。简单一句话,确定你的ftp上传的文件夹和你绑定的域名访问文件夹的位置,然后你只要知道他们之间的嵌套关系就好了。
3.注意那个存档里也要设置ftp路径,最好是将它前面的ftp设成一样,方便管理。
好了,这个罗嗦完了。
6.说一下Custom Domin服务
Custom Domin真的很强,这个和FTP发布只有一个区别,就是你只要在你的域名上制定一条A记录只想google的ghs.google.com就可。你就可以通过这个域名访问你的blogger,你的永久链接里的***.blogspot.com也会由你的设置的域名而取代。而Google会为你保存所有的数据,你也可以用到blogger的所有功能。对于很多想用自己域名的朋友来说是在是太棒了!应该算是这个世界上最低廉而且兼顾乐趣的blogging方式了。可惜,这个功能只几天就被GFW掉了。应该是怕国内的主机商没前赚了吧):
好了,这篇文章写完了。如果你正在为选择blogging服务而苦恼,我告诉你blogger的FTP发布确实是个门槛低、效果不错的选择。如果你喜欢玩花样,那些blogger hack也许会让你找到乐趣的。):

使用IPv6 DNS解析IPv6域名(不必修改hosts文件)

很多网站,例如Google,都是IPv4和IPv6双线接入的,www.google.com解析对应许多个IP,其中IPv4和IPv6都有。在默认情况下,DNS服务器会返回多个IP地址,而本地机器则是根据各个地址的响应速度自动选择主机。
通常,人们会采用修改系统目录下的hosts文件,将Google的地址指定为IPv6的那个地址,使本地机器不去访问DNS服务器,而直接从本地获取IP地址进行访问。
其实,可以采用更简洁的方法,而不必修改hosts文件。
目前,一些公益组织已经提供纯IPv6协议的DNS服务器,设置IPv6的服务器,可以返回IPv6的地址(同时也返回IPv4的地址)。(注意:由于目前GFW并没有对IPv6的DNS进行封锁,用户可以通过该种方法突破一些GFW不允许访问的站点。)
设置IPv6 DNS地址为:2001:470:20::2 ,就可以轻松访问所有IPv6网站,当然前提是解析出来的所有地址中IPv6的地址响应速度最快,一个极端的解决方案是关闭IPv4协议,不过貌似很多人不喜欢没有IPv4网络的时代,至少目前是这样的。
设置完成之后,Google几乎所有的产品都可以通过IPv6访问!Cool!

Enjoy the new (future) Internet Protocol!

以上参考<http://blog.csdn.net/wangjingfei/article/details/5396845>

2012/11/2更新

Google Public DNS IP addresses
The Google Public DNS IP addresses (IPv4) are as follows:
8.8.8.8
8.8.4.4
The Google Public DNS IPv6 addresses are as follows:
2001:4860:4860::8888
2001:4860:4860::8844

来自Google

ge-diao-bu-gao-zen-mei-ban

格调不高怎么办(转载) (2011-11-02 18:42:22)

韩寒

自从《脱节的国度》不见了以后,一直都未写东西。因为我着实是一个写的不勤奋的人,每次写完,隔日不见,真的扫兴,而且国家部门繁多,就算宣传部门和新闻出版部门觉得没问题,所有配备了帕萨特以上公务车的部门也都可以一个电话把你文章删了。其中最仁慈的反而是某地方的公安部门,08年有一天我写了一篇文章,事隔一年多,他们删除了这篇文章。难怪大家都说公安出警慢。的确。删文章的地方太多了,就不知道该怎么下笔了。

从事了这个工作大概十三年,我发现文化工作者在地位上真是一个特别下三滥特别窝囊废的工种。这个工种所出产的作品由于受到诸多的限制,所以肯定没有那么奇特的经历更加精彩。我来说一些小故事。

在中国的出版行业,其实是没有官方的审查的。大家都应该觉得很奇怪,因为这违背了常识。但是可以告诉大家,出版行业的确没有审查。这是因为中国每年要出几十万本书,实在审查不过来。而且我相信管那些读书人的同志大部分都不爱读书,所以图书审查其实一直由出版社独立完成。

但是这样一来岂不是百花齐放了。当然不是。比较专业的说,这叫事后审查制。事后审查制其实要比事前审查制更加紧,杀伤力和副作用更大。这点用过事后避孕药的朋友肯定深有感触。

只有拥有书号才能出版,只有出版社才能发书号,只有官方才能有出版社,所以从源头上,自由的出版其实是不可能的。而由于大量的国有出版社能力不济,很多民营文化公司开始运营图书出版。出版的方式就是合作出版或者从出版社那里购买一些书号。但这依然不能改变出版现状,因为出版社依然是终审方。而一本书如果不让出版,在以往理由是反革命,后来反革命这个词不太出现了,因为反革命既然是不好的,那岂不成了鼓励革命。而官方认为,革命工作已经完成,所以既不能反革命,也不能革命,群众最好的生活方式就是呆着。于是现在不能出版的理由就是格调不高。我第一本书《三重门》就是因为格调不高,迟迟不能出版。格调不高是致命的,因为文笔太差可以改,逻辑不清可以理,唯独格调不高让人头疼,你也不知道怎么能让自己的格调提高一点。你问他什么是格调,他也不知道。一直到现在,我才明白了,格调其实就是割掉的意思,格调不高就是割掉的不够高,你以为象征性的把脚底板的老茧磨磨平就能从事文化行业了么,你要割掉的够高。凡是保留腰以下部分的,从事文化行业明显还是会显得雄性气息太浓厚。

我是一直饱受审查之苦的。但在格调稍微高了一点以后,我还是侥幸可以出版图书,并且因为图书的畅销,有的时候还稍微可以在小问题和出版方争取格调稍微降低一点。每次写作前,我都要进行一次自我审查。也许很多没有从事过这个行业的朋友会觉得我们这样做特别怂,不够MAN。比如当年《独唱团》出版前遇到很多的困难,一些朋友看不下去了,说你太娘们了,这要是我,不要书号了,直接拿到印刷厂去,印个几十万本,这就开卖了。我欣赏这位朋友的没有格调,但他们不知道印刷厂只有收到了出版社开具的委托印刷单以后才能开机印刷,否则你非但印不了一本,人家就报警了。其次就算你爹开了一个印刷厂,你印刷出了几十万本,你没有书号,没有一家书店和报刊亭是会进你的货的。连卖盗版的都不敢帮你卖。也许这位朋友会说,那我就放到网上去,在淘宝卖。那我告诉你,在淘宝销售图书,首先你得拥有资质,其次你不能随手拍一个封面就上架了,你必须输入书号,当系统把你输入的书号和书名对应起来,你才能上架。

所以一直到今天,所有的文化人都在进行着痛苦的自我审查。那我们能否指望出版社突然格调降低呢,这当然也不可能,一旦出版社有格调降低的迹象,由于都是国有单位,官方再指派一个社长过去就是。而那些格调降低的同志就可以去妇联残联养养老。事后审查制最恐怖一环在于惩罚,就是我不管你,但你要是出版了什么幺蛾子,我罚死你。轻则撤职撤社,重则投进大牢,所以你看着办吧。

至于我本人,虽然每一篇文章都经过了自我审查和阉割,但有的时候难免也会出现阉割的形状不符合认证的情况。这个和每个出版社的紧张程度有关系。比如我最新的小说就被枪毙了,因为新小说里的主人公姓胡,虽然我才写了五千字,但是出版社认为这必然是有政治隐喻的。当我明白了要避讳的时候再改姓已经晚了。但避讳要记住勿忘前朝,我还有一篇小说中,因为出现了“江河湖海”四个字,被更直接的枪毙了。如果说之前我犯了错误的话,那这一个就是两倍的错误。连我都不能原谅我自己,明知道若不起,怎么连躲都没躲利索呢。

我不知道一个文化人提笔就哆嗦的国家怎么能建设成文化强国,一个因为要避讳常委所以在谷歌上搜索不到李白的国家怎么能建设成文化强国。我不知道该怎么一个文化体制改革法,反正我只有一个愿望,就是韩正老师别再升官了,要不然我就搜不到我了。

原文已被删除:http://blog.sina.com.cn/s/blog_4701280b0102dwvy.html

我的独立站

汇编mov使用

MOV错误类型:

1.长度不匹配 MOV AX,BL

2.操作数类型不确定 MOV [SI],0     -----正确MOV wordptr[si],0

3.AX CX DX 不用于寻址 MOV

应用序 or 正则序?

这是《计算机程序的构造与解释》中的一道习题,如何去判断一个scheme解释器是采用什么方式进行求值的?应用序 or 正则序。应用序是先对参数求值而后应用,而正则序则相反——完全展开而后归约求值。正则序相比于应用序,会部分存在重复求值的情况。习题是这样的:
Ben Bitdiddle发明了一种检测方法,能够确定解释器究竟采用的哪种序求值,是采用正则序,还是采用应用序,他定义了下面两个过程:
(define (p) (p))
(define (test x y)
(if (= x 0)
0
y))

而后他求值下列的表达式:
(test 0 (p))

如果解释器采用的是应用序求值,ben将会看到什么情况?如果是正则序呢?

分别分析下这两种情况下解释器的求值过程:
1.如果解释器是应用序,将先对过程test的参数求值,0仍然是0,(p)返回的仍然是(p),并且将无穷递归下去直到栈溢出,显然,在这种情况下,解释器将进入假死状态没有输出。

2.如果解释器是正则序,完全展开test过程:
(define (test 0 (p))
(if (= 0 0)
0
(p))

接下来再进行求值,显然0=0,结果将返回0。

一般lisp的解释器都是采用应用序进行求值。这个问题在习题1.6中再次出现。我们知道scheme已经有一个cond else的特殊形式,为什么还需要一个if else的特殊形式呢?那么我们改写一个new-if看看:
(define (new-if predicate then-clause else-clause)
(cond (predicate then-clause)
(else else-clause)))

写几个过程测试一下:
(new-if (< 1 0) 1 0)

结果一切正常,但是,当这3个参数是过程的时候会发生什么情况呢?在这3个参数如果存在递归调用等情况下,解释器也将陷入无限循环导致栈溢出!比如书中的求平方根过程用new-if改写:
(define (new-if predicate then-clause else-clause)
(cond (predicate then-clause)
(else else-clause)))
(define (average x y)(/ (+ x y) 2))
(define (square x) (* x x))
(define (improve guess x)(average guess (/ x guess)))
(define (good_enough? guess x)
(< (abs (- (square guess) x)) 0.000001))
(define (sqrt_iter guess x)
(new-if (good_enough? guess x)
guess
(sqrt_iter (improve guess x) x)))
(define (simple_sqrt x)(sqrt_iter 1 x))

因为解释器是应用序求值,将对new-if过程的3个参数求值,其中第三个参数也是一个过程(sqrt_iter (improve guess x) x)) 递归调用自身,导致无限循环直到栈溢出。

 

from:http://dennis-zane.iteye.com/blog/78094

安装WordPress后需要做的事

一、更改博客的永久链接形式

wordpress官方列出的部分可以使用的永久链接基本参数:

%year%
基于文章发布年份,比如2007;
%monthnum%
基于文章发布月份,比如05;
%day%
基于文章发布当日,比如28;
%hour%
基于文章发布小时数,比如15;
%minute%
基于文章发布分钟数,比如43;
%second%
基于文章发布秒数,比如33;
%postname%
基于文章的postname,其值为撰写时指定的缩略名,不指定缩略名时是文章标题;
%post_id%
基于文章post_id,比如423;
%category%
基于文章分类,子分类会处理成“分类/子分类”这种形式;
%author%
基于文章作者名。

将上述参数进行组合,即可得到wordpress的永久链接形式。网上常见的几种设置方法:
1、/%year%/%monthnum%/%day%/%postname%/
2、/%year%/%monthnum%/%postname%/
3、/%year%/%monthnum%/%day%/%postname%.html
4、/%year%/%monthnum%/%postname%.html
5、/%category%/%postname%.html
6、/%post_id%.html
诸如此类,可以自由定义的。昨天自己也改了几次,最后还是确定为:/%category%/%postname%.html这种形式。其实我是想使用基于日期的,后面叙说,都是一些片面的观点,仅供参考。

1、考虑到自己博客属单人维护,内容不可能很多,所以目录结构不宜过深,其实按照网上的说法,三层以内都是完全没问题的,可是一旦层数多了后,整个网站就变得比较松散了,网上似乎把这个叫黏合,所以我觉得上述第1、3种可以放弃,除非站点内容丰富,也通过tag之类的进行联合。
2、我个人是倾向于使用基于日期的,比如这种/%year%%monthnum%/%postname%.html生成的就是 200705/XX.html,但是当你使用200705这个目录式访问时wp把200705自动重定向到2007/05,我就是不喜欢,又不愿意改成 2007/05/XX.html这种形式,只有继续想办法了。
3、最后才确定使用分类来生成链接,就是上面的第5种,这种其实也不错,很多朋友都是采用的这种,我喜欢简洁就把自己的目录缩略名设置得很简单,链接看上去也还可以了。
4、我没有用现在更容易被收录的/结构而是采用html为扩展名的形式,我的想法是一个网站不能总有目录结构没有html文件吧,全站都是目录结构了,觉得这样看上去不好看,所以还是按照传统的样式好了。

二、找一款好的主题

安装好博客之后,尽快找到一款好的WordPress主题,也是很关键的,当然,有爱好的朋友,可以自己设计。

三、增加统计代码

国内的统计有很多,一般的博客用cnzz51啦就ok,还有量子恒道,当然还有就是大仙:Google统计,至于为啥要加统计代码,相信各位都清楚。

四、开始好好写内容吧
再好的设置,再好的优化,再好的主题,再好的用户体验,都需要有好的内容来支持,所以,内容才是王道!
当然,记得把自己好好通过about页面好好介绍一番,这个方便交流和沟通,也是很必须的。

 

 

 

 

 

 

 

Show一下我的C8500s截图

这张图是我刚刷机那会儿截 的,那时候 豌豆夹还没有把C8500s的外壳录入。所以就成了上面的情形。

下面三张是我刚截图的。豌豆夹已经更新了。

这张是主界面

这张是待机界面。

一些程序。

只适用华为C8500s的ROM刷机包

只适合华为C8500s

我自己用的就是这个:http://115.com/file/aqyhq68q

rom说明:

1.源自官方最新rom。

2.qq服务,电信定制的统统去除。

3.换成超级棒的go桌面。

其他自己体会。





刷机方法:

1.关机。

2.音量下+确认键(屏幕下方的银色按键)+电源键(华为图案出来后过5秒后全部松开)

3.插上数据线(在设备管理中应该可以看到ADB Interface的设备,如果看不到请安装usb驱动)

4.解开下载来的rom包,找到“华为C8500s刷机程序.bat”运行。期间不要断开数据线。

5.刷机成功,会自动重启。此时请拔掉电池,5秒后再装上。

6.按音量上键+确认键+电源键,直到recovery出现,请执行wipe data和wipe cache。

7.重启进入干净的系统。自己要装什么就装什么。

华为C8500s 的各种资源(从in189.com上下载的)

in189.com这个论坛是要注册的,我就把一些我下载的文件共享一下吧。

C8500s的ROOT  http://115.com/file/e6vz6g4b    获取管理员root权限

 

具体教程ROOT教程   这里

C8500s的刷机包ROM:(我自己用的就是这个)http://115.com/file/aqyhq68q

具体的刷机教程 请看这个

C8500s 的驱动  http://115.com/file/bhf8huhl

修复8500s的Recovery刷机程序     http://115.com/file/aqyhqvtv

官方的ROM:http://115.com/file/cltdljfn

还有一些,我自己下了都没用到。比如说ADW备份,什么的我也不知道怎么用。所以也就没链接。

如果还有什么需要的话,随时可以留言。我会尽快恢复。

华为C8500S超详细线刷刷机教程 更新版

华为C8500S详细线刷刷机教程,开始:

鉴于很多网友是新手,都在询问刷机过程,怎样刷机,下面我就做个详细教程,本教程适用于C8500S,其它安卓手机可借鉴刷机过程。


第一步,安装驱动。安装91助手或C8500S手机自带的天翼宽带客户端,即安装手机驱动,然后将C8500S与电脑连接,在设备管理中应该可以看到ADB Interface的设备(或其它在连接手机时多余的设备,只要在设备管理中没有红叉就行),这样说明手机与电脑连接正常,手机驱动安装是正常的。

修复8500s原版recovery程序

很多同学都在测试8500s的CMrecovery,一不小心就刷坏了。这里提供修复原版recovery的工具。自己试试吧!

1.请确认正确安装手机驱动

2.请关闭手机使手机处于关机状态下

3.请同时按住音量减小键+中间确认键+开关机键一段时间

4.开机以后,屏幕应该停留在华为LOGO屏幕

5.把手机通过USB数据线和电脑连接

6.请在电脑设备管理器中确认ADB设备(是一串英文,很好找到)正常启动

7.任意键开始刷机。

我在115网盘上共享了一个:  如果你也想要115网盘,请点击这里

修复8500s的Recovery刷机程序.rar (3.41 MB)

源文档 <http://www.in189.com/thread-207091-1-1.html>

Android手机不能同步google账号

无法与服务器建立稳定的数据连接,每次都是这样,后来发现只要将服务器  改成 m.google.com 就能连上了。额。真。

华为C8500S获取root权限

---------------------------------------------

首先我们了解一下ROOT权限到底是什么? 获取Root权限有什么作用?

疑问一:Root权限是什么?

答疑: Root是Linux等类UNIX系统中的超级管理员用户帐户,该帐户拥有整个系统至高无上的权利,所有对象他都有可以操作的权利,所以很多黑客在入侵系统的时候,都要把权限提升到Root权限,也就是将自己的非法帐户添加到Root用户组。类比于Administrator是Windows NT内核系统中的超级管理员用户帐户,也拥有最高的权限。但不同的是,在WINDOWS下Administrator的资源和别的用户资源是共享的,简单的说,别的用户可以访问Administrator的文件。而Linux中,别的用户是不能访问Root用户的家目录(/root)下文件的。因此,Linux比Windows更安全。

代码1

#include "stdafx.h"
#define arraySize 20
#include
#define maxInt 4294967295

int factorial(int m) /* m>=1 */
{
int M = 1 ;
for(int i=1;i<=m;i++)
M = M*i;
return M;
}


int main()
{
int n = 0;
int A[arraySize];
for(n=0;n < arraySize;n++)
{
int Mi=1;
for(int j=0 ; j<n ;j++ )
{
Mi = Mi*2;
}
A[n] = Mi * factorial(n);

}
for(int i=0;i<arraySize;i++)
{
cout << A[i]<= arraySize || A[i]>maxInt)
{
return 1;
break;
}
}
return 0;
}

代码2

#include "stdafx.h"
#define arraySize 10
#include
int factorial(int m) /* m>=1 */
{
int M = 1 ;
for(int i=1;i<=m;i++)
M = M*i;
return M;
}


int main()
{
int n = 0;
int A[arraySize];
for(n=0;n < arraySize;n++)
{
int Mi=1;
for(int j=0 ; j<n ;j++ )
{
Mi = Mi*2;
}
A[n] = Mi * factorial(n);

}

return 0;
}

华为C8500s刷机

先前写过一篇拿到C8500s后的测评,及第一印象。

不愧是腾讯定制机啊,所有的软件都被替换成了腾讯的产品,桌面上扣扣显而易见,扣扣边上是扣扣空间,微博,TT浏览器。哦!NO!TT浏览,我手机在差,也不会用TT浏览器的啊。还有就是电信的很多软件,什么爱音乐,爱阅读,电信的定制也很多啊。所以,这更进一步的加强了我要刷机的愿望,所以那几天,我天天研究刷机的教程,也找到了不少的好文章。

添翼圈  www.in189.com  这是天翼 的 一个论坛。我在上面找到了很多的教程。

下面就是我找的教程,我根据这个教程 成功刷机成功。  刷机包是这个   http://u.115.com/file/bhqso9c9#

如果你想看其他的刷机包这里有。

C8500S 刷机包合集 11.08.15

http://www.in189.com/thread-214020-1-2.html

C8500S ROOT权限破解详细教程及如何精简系统

http://www.in189.com/thread-214308-1-1.html

==============================================

华为C8500S详细线刷刷机教程,开始:

鉴于很多网友是新手,都在询问刷机过程,怎样刷机,下面我就做个详细教程,本教程适用于C8500S,其它安卓手机也可借鉴刷机过程。

第一步,安装驱动。安装91助手或C8500S手机自带的天翼宽带客户端,即安装手机驱动,然后将C8500S与电脑连接,在设备管理中应该可以看到ADB Interface的设备(或其它在连接手机时多余的设备,只要在设备管理中没有红叉就行),这样说明手机与电脑连接正常,手机驱动安装是正常的。


 

 

 

 

 

 

 

 

 

 

第二步,找刷机包。找到C8500S手机的刷机包,论坛中有不少,请搜索,本空间也有下载地址。

第三步,刷机前WIPE。注意:WIPE前必须做好短信、电话本等等之类的备份。刷机前WIPE。这步是必须的,不然很可能刷不进去系统。(我看了有些教程中,这步可以忽略,介绍中说在刷好后进入系统前,做这一步,看你自己吧)。

这一步操作过程:

手机关机,按住音量上和开机键直到进入一个三角形+感叹号界面过后,即进入官方的recovery 。

共五个选项,如下(有些有六个选项,recovery版本不同,选项不同):

第一项:reboot system now                重新启动手机

第二项:apply sdcard:update.zip        官方卡刷升级包强制升级用这个选项

第三项,Wipe data/factory reset         有两选项NO 和 YES  - delete all user ,选YES。

第四项,wipe cache partition

第五项,Wipe misc partition

(好像是刷了C8500S官方B633SP01新版的固件加上去的)

第六项,touchscreen firmware up

操作方法:

1、首先用音量键选择第三项,按关机键确定进入第三项,用音量键选择YES,关机键确定,然后等待。

2、接着再出现上述五个选项,选择第四项,按关机键确定执行第四项后再出现上述五个选项。

3、然后选择第一项重启手机。

注意:如果你手脚够快,WIPE后执行重启后,屏幕会闪一下,这时你直接执行第四步按住音量下和开机键进入刷机等待界面。否则在手机重启时你就扣掉电池,然后再执行第四步。

第四步,如何进入刷机等待状态。WIPE结束后就可以刷机了,首先要进入刷机界面。然后按住音量下和开机键(有些是音量下+确认键(屏幕下方的银色按键)+电源键,可能是取决于recovery版本),在出现华为logo界面后默数10秒左右松手,会一直停留在华为logo的界面上,这就进入了待刷机界面。

第五步,刷机。刷机时必须把系统的杀毒之类的软件给关闭,最好是刚启动的电脑。将刷机包解压到一个项文目录下,目录不能有中文,否则可能出错。将手机与电脑连接,然后找到刚才刷机包解压后的目录,找到并点击“双击这里开始刷机.bat”,然后跳出CMD窗口,手机连接电脑,然后点击任意键,开始刷机了。等待1分钟左右刷机即可结束。

开始刷机:


 

 

 

 

 

 

 

 

 

 

刷机结束:


 

 

 

 

 

 

 

 

 

 

第六步,重启手机。刷机结束后会自动重启手机的,提示刷机结束后即可拨下数据线。注意:这一步WIPE,可以不作。但还是说一下方法:在拨下数据线的时候扣下电池,将第三步,WIPE,操作进行一遍,这样操作的目的是为了刷机后系统进入系统出厂状态,减少因刷机而出现问题的机率,当然你也可以不做这一步,在手机重启后如果出现问题,可再进行这一步操作试试。

注意:这一步的WIPE,可以不作。如果要WIPE,也可在提示刷机结束后,立即拔下数据线,手机这时会从华为图像界面黑一下屏再回到华为图像界面,黑屏重回华为图像界面时,执行第三步操作,即按住音量上和开机键直到进入一个三角形和一个感叹号界面,也一样的可以进入recovery 进行WIPE。

第七步,至此刷机成功。重启进入手机,自己想装什么软件就装什么软件吧。

教程详解:银狼驰骋

2011.8.9

源文档 <http://www.in189.com/thread-210721-1-1.html>

免费的空间,新的家

今天找到了个免费的空间。axspace 在这上面新建了个 wp einverne.axfree.com/einverne
似乎域名不能直接访问。但是域名是通的。修改了host 将域名本地解析到IP,直接就能访问了。。。。
哎,中国的网络啊,真让人失望。
装好了wordpress,常规的设置修改一下。

软件随想

平时喜欢看一些软件,了解一些功能,并测试一些软件的功能。长此以往,硬盘中积累了大量的安装包,今天出去也是做一些宣传的传单吧,有人没有PS,我给装了一下。看到这么多的软件,他们很惊讶。问我都会用吗?我说不是都会的啊。然后他们想起来我是学计算机的,若有所思地说:计算机的人都自己写软件的。。。。。我汗。。。。然后我想在想想,是啊。

Chrome插件

上回写过一篇chrome中的Proxy Swithy失效的文章,这回找到一个有效的插件SwithySharp,这个插件能用GoAgent,GAppProxy,这些搭建在GAE上的代理。

新拿到手的华为C8500S

电信宽带业务,拿了个手机——华为C8500S,我见我同学用过C8500的手机,还不错,那就先拿着这个升级版的用用吧。
谷歌了一下,看了一些测评。
贴出来:
中关村在线 (还是一个不错的网站 电子产品都做的不错)
http://mobile.zol.com.cn/238/2385575.html

chrome浏览器插件Proxy Swithy在新版本中失效

关于chrome浏览器的Proxy Swithy插件似乎在新版版的chrome中失效的问题。。。。。。

Ubuntu里面竟然上无线网不要验证。。。。

今天装了个Ubuntu系统,开机使用,提示我有无线网络可以使用。我就打开自带的火狐,谷歌一下,喔2噢。不用验证,不要密码。我去。。。。这。。。。。。

Journey

 

Tell a story about something that happened to you or someone you know over/during a holiday.

When it comes to journey, I always think of the journey to Expo. It was last summer, after my college entrance examination that several good friend and I prepare to go to shanghai to see the Expo. You know, at that time,the shanghai Expo was the only topic among people.

So we started our trip.In our plan, the trip would take us about 4 days. The first two days was in Suzhou,another beautiful city.And the last two days was to shanghai.When we arrived in Suzhou,it was very hot outside.So we hurrily/quickly found a restaurant to enjoy the air condition instead of eating.After our slowly eating,we have to find place to live in that night. And then next day we went to some traditional Chinese garden,which was the symbol of Suzhou. Luckily, I have to say,we got the chance to visit a Museum for free.The second day in Suzhou was a tired day.We spent the whole day in Suzhou Amusement Park.After playing some ,I was too tired to go on so I just stand by side and watched them playing.

Later in this day,we took a train to Shanghai.It was nearly mid-night when we arrived.Luckily,we had offered hotel ahead of time.The third day of our journey was a nightmare.We got up at 4 am.and we took a taxi to the gate of Expo.And we just stayed in front of the gate to wait the gate to open at 9 am.We think we were so early that we did not nead to enter the pavilion [pə'viljən].But the fact disturbed us.In front of the pavilion there were still long queue.So we wait wait and wait …finally we enter some unwelcomed pavilions.But we enter the Chinese Pavilion. In order to enter Chinese Pavilion we waited outside for about 4 hours.It was really horrible.So we decided not to Expo next day.And we just stay at the hotel .

At last ,it’s a long and tired journey.

我的网络

[gallery]

IPv6+GAE——内网用户轻松穿越外网

首先声明这篇文章转自望月博客
其次本人证实有效
又是一篇投稿的文章,所不同的是,来自与非的 这篇投稿文章给我的触动很深,文章的质量和技术含量都是望月的博客接受投稿以来最高的,更让人感动的是,与非同学进行了精心的排版,提供了txt、pdf 和docx三种格式的文章。当然,看了文章内容之后,我也知道这篇文章所介绍的内容会让运营商和某些人(你懂的)不高兴,但是如果真的能对以广大在校学生为主体的内网用户以极大的方便和实惠的话,那么何妨利用我的博客这个小小的平台,让更多的朋友享受这份实惠呢?姑且,能传播多远就传播多远吧。


引言
此文为校园网用户量身打造。
按本文介绍的方法,成功后的效果是:你只需登录内网,然后通过IPv6网络和GAE个人代理服务,即可访问外网。最妙的是,还顺便翻了墙。
本方案可以为你节省全部网费开支,当然运营商不大愿意看到的这样的结果,但我知道这是广大对于电信行业的垄断式经营怨声载道却又无可奈何的学子们梦寐以求的上网方案。我是站在群众一边的。
话又说回来,各位电信巨头在每个季度赚得盆满钵满之余,稍稍为祖国的教育事业让出一份利润,也不为过吧?要知道,大多数学生都是没有收入的,而目前提供给我们的各种网络业务,质量参差不齐,服务令人失望,而且仅此一家别无分号。
所以,每一个神奇的穿越技巧,都对应着一个糟糕的既有业务。
如果我们可以有选择,如果现在的各种服务都合情合理正规正常,没人会吃饱了撑的去折腾这些。
闲话到此为止,下面开始正式的技术讨论:)

首先,概述操作步骤如下,这是你将要在本文的指导下完成的整个配置流程:
1. 开启IPv6服务
2. 申请Google账号
3. 创建个人GAE应用
4. 配置GAppProxy/WallProxy代理
5. 更改本机hosts文件
6. 设置浏览器代理地址
7. 启动代理,开始上网!
以下是详细操作流程,按着步骤一步一步来,一定能成功的,祝你好运!

一、IPv6篇
1.1 准备工作:
1)关闭本地连接的第三方防火墙
当然你把本校的隧道地址添加为防火墙的白名单也可,但由于不同的防火墙软件设置不一样,一旦设置不对了就完全用不了IPv6,这里不再展开讨论。
关闭防火墙步骤:右击本地连接→属性,在“在连接时使用下列项目”中找到有你防火墙软件的名字那个选项,把前面的勾去掉,确定即可。

2)开启IPv6 helper服务
开始菜单,运行,输入“services.msc”(不要引号),打开服务窗口,找到“IPv6 helper service”,双击打开,启动类型改为“自动”,然后点击“启动”按钮,确定。

此外对于使用360安全卫士或者类似的国内所谓安全软件,由于它们会自作聪明地把这个必需服务给“优化”掉,所以你需要特别留意把禁掉的服务还原回来,否则IPv6是用不成的。
3)某些安装不成功情况下,在“运行”中输入“esentutl /p %windir%\security\Database\secedit.sdb”(不要引号),也可解决问题。
1.2 安装IPv6
(仅针对WinXP/2003,Vista和Win7自带IPv6,不必安装。)
开始,运行,输入“cmd”,回车打开命令提示符窗口;再输入“IPv6 install”,回车,搞定。

1.3 配置IPv6
由于校园网通常不是纯IPv6环境,所以需要一个“隧道”(很形象的比喻,具体技术细节大家有兴趣自己去搜吧),以电子科大的IPv6隧道设置为例(地址为:202.115.255.242)
配置步骤:
开始,运行,输入“cmd”,回车打开命令提示符窗口,输入“netsh”,回车,然后输入以下内容:
netsh>int
netsh interface>IPv6
netsh interface IPv6>isatap
netsh interface IPv6 isatap>set router 202.115.255.242(注:对于非校园网用户,其实也可以借助隧道应用IPv6服务,比如设置为上海交大的隧道地址:isatap.sjtu.edu.cn,但速度就不很理想 了,看IPTV通常会很卡。所以对于公网用户,不妨直接参考下文GAE篇进行代理,Google可是IPv4/IPv6通吃的)
完成后可打开http://www.6rank.edu.cn/网站进行验证,看能否登录,若可,则表示你的IPv6大功告成。(也可通过在命令行中输入“ipconfig”查看本机IP地址中有无形如“2001:******”的地址段,这个地址就是你的IPv6地址,若有,即表示配置成功)


1.4 更改HOSTS文件
更改hosts是最初等的翻墙术了,但在IPv6环境下效果那是出奇的好~
打开“C:\WINDOWS\system32\drivers\etc\”路径下的hosts文件(可用记事本打开);
在末尾添加一组以Google为首的n多IPv6网站地址目录(传送门——最新Google IPv6 hosts地址集合:https://docs.google.com/View?id=dfkdmxnt_61d9ck9ffq(谷歌docs在中国被封了,有可能不稳定上不去的,我备份了一下,点我下载),你会发现Google的IPv6地址数量很可观,多多益善啊!都复制进hosts里吧,这些可都是捷径啊~)
保存,退出。
你再用浏览器打开Google看看,是不是可以登上了?还不会跳转到Google HK,而且居然还可以查看网页快照!开心吧?且慢,再输入一个youtube.com试试,额滴神啊,阔别多年的U2B又回来了!爽翻了吧,呵呵~
好,我们歇一下,先开罐啤酒为生猛的IPv6干一杯~
接下来,轮到第二位主角——GAE——登场了,有了Google的引擎推动,IPv6那可是如虎添翼啊!

二、GAE篇——暨GAppProxy代理详解

前文所介绍的IPv6技术只能达到访问部分外网的目的,可网络的世界是广阔的,天下甚多网站,一个小小的hosts岂能装得下?

况且所谓hosts翻墙,是很不稳妥的。

景德镇的局域网总是会出现各种意想不到的问题,所谓道高一尺魔高一丈,想用傻瓜的方式翻过GFW的高墙,那是不可能滴~
< 老罗不是说过么,坏人总是更勤奋一些。(我是坏人么?)

其实,下面将要介绍的GAE应用下的GAppProxy代理方法也不复杂,按照步骤操作,很快就能搞定~
Here we go!

2.1 准备工作

准备工作只有一条:你要有一个Google账号,也就是一个Gmail。

什么?你只用Qmail?呃,你还是真不关心自己的邮件安全,趁早换吧~原因不多说了……总之这种“网络严肃服务”(我自己下的定义,就是指邮箱、域名、账号等对自己来说等很重要的服务)还是尽量远离天朝IT企业,这些服务在他们的托管下,用着心里不踏实。

当然,这不是他们的错。

况且你已经摆平IPv6了,还添加了n多Google hosts,不整个Google账号享用一下,岂非暴殄天物?

好了,赶紧申请一个吧~(传送门:https://www.google.com/accounts/)

2.2 创建GAE

毫不夸张地说,GAE(Google App Engine)是Google划时代的产品。它的强大和便捷远远超出你的想象……打住打住。

下面是具体操作步骤图解:

1)打开”http://appengine.google.com/”,输入你的Google账户、密码,登录;



2) 点击“Create an Application”;

国家一栏选“Other”;

电话号码填“+86 你的手机号”(注意一个手机号只能注册一次);


3) 片刻之后,Google会往你的手机发送一个验证短信,把验证码输入进去,确定;


4)填写你的Application Identifer,这个就是你以后上外网要仰仗的永久地址了,想个好点的名字哈(只能使用小写字母、数字和连字符”-“,长度不能小于6个字符。这里我使用的是uestcproxy,望文知意啊);然后输入Application Title,确定;


注:“Authentication Options (Advanced)”中最好选择默认选项,即“Open to all Google Accounts user”,其中第三个选项(Open to all users with an OpenID Provider)貌似很有用,不过现在尚处于实验阶段,不推荐使用。

5)GAE应用创建成功!


以后使用时可以进入“Dashboard”,查看流量等使用信息。


注:每个Google账号可以申请十个GAE应用,每个GAE应用每天都有1G的流量(我通常一天的流量不超过100MB),足够用了。

2.3 配置服务器端

上一步仅仅是在Google为你申请了一个应用,但还未激活。你现在需要一个小小的上载工具,把Google服务器中的那个GAE代理服务激活,成为你的专属代理服务器!

下面先介绍应用GAppProxy代理的方法,下一篇再介绍WallProxy代理方案。

GAppProxy可以去项目下载专页下载,这里的版本最新(传送门:http://code.google.com/p/GAppProxy/downloads/list)。

下面是具体操作步骤:

1)点击“GAppProxy服务端源码+windows自动布署工具”,进入下载页面进行下载(下载地址:http://GAppProxy.googlecode.com/files/uploader-2.0.0-win.zip);

2)把压缩包解开,点击uploader.exe,在AppID后输入你的Application Identifer,回车;

3)输入你的Gmail;

4)输入密码(注意:在输入密码的时候,屏幕不会有任何显示,不要紧,输完后回车即可);


5)稍等片刻,待配置完毕,当出现”ready to start serving“,大功告成!

打开 http://uestcproxy.appspot.com/fetch.py,会看到你的GAppProxy服务器端已经在工作了:


2.4 配置GAppProxy本地代理

现在在Google的服务器中已经有了你的一席之地,接下来你就要在你的电脑和Google服务器之间打通一条通道,然后就能以Googl为跳板,遨游外面广阔的网络世界了!

这个通道,就由本地代理来开启。

所谓万事俱备,只欠代理^ ^

下面是具体操作步骤:

1)打开GAppProxy下载专页下载GAppProxy的Windows版客户端(下载地址:http://GAppProxy.googlecode.com/files/localproxy-2.0.0-win.zip);

2)解开压缩包,用记事本打开proxy.conf文件;

在末行添加fetch_server = http://xxxxxx.appspot.com/fetch.py,这里的xxxxxx即为前面你申请的Application Identifer(注意行首没有“#”号),保存退出;



3)点击proxy.exe,开启代理!

此时若已经登录公网,那么将会出现如下画面:Direct Fetch后面是Yes,表示你已经与Google服务器建立了直接连接。


这时你再在浏览器中设置好如下代理:”127.0.0.1:8000“,就可以轻松翻墙,自由浏览了~而且你现在看下你的IP地理位置(传送门:http://www.geoiptool.com/),居然是美国加州山景城的IP,神奇吧~

当然,我们的最终目的是在不登录公网的情况下也可以自由浏览,作为一个准Geek,这种半自由状态是不能接受的。

下面在最后一节,隆重推出内网直通公网的杀手锏,各位童鞋打起精神咯~

2.5 配置APPSPOT的HOSTS地址映射

在开始真正的自由浏览之前,你还需做最后的一项工作:为hosts添加当前的GoogleIPv6解析地址。

具体操作如下:

1)拨号进入校内网络;开始菜单,运行,输入“cmd”打开命令行窗口;

2)输入“ping IPv6.google.com”,回车,得到最新Google的IPv6解析地址,记下来;


3)用记事本打开hosts文件(位于C:\Windows\System32\drivers\etc),在末尾添加两行:

2404:6800:8007::63 uestcproxy.appspot.com

2404:6800:8007::63 www.appspot.com

这里“2404:6800:8007::63”即为Google的IPv6解析地址(2010-10-31下午ping得到),“uestcproxy.appspot.com”是我申请的GAE地址。



注:添加appspot与Google的hosts地址映射非常重要,这是实现穿越的关键一环!

4)点击proxy.exe,开启代理!

此时Direct Fetch 后面为No,不必担心,这是因为你现在处于内网环境,但通过IPv6网络照样可以连接到Google的服务器。



5)现在,打开Internet选项,设置浏览器代理地址。
然后后打开你的浏览器,输入任意一个外网网址,回车!
哈哈,怎么样,是不是顺利打开了~再看看此时的proxy程序窗口,一行行的数据正滚滚而过,表示你的网卡与Google的服务器沟通良好~
然后再输入一个墙外的网站地址试试,是不是也可以顺畅打开了?
Congratulation!
至此,依托IPv6+GAppProxy技术,从内网穿越外网的任务大功告成!

好好享用吧:)


三、GAE番外篇——比GAppProxy更强大的WALLPROXY代理

第三篇所介绍的方法是基于GAppProxy代理服务的,是个完整的解决方案。但GAppProxy有一个很不方便的地方,就是对https的支持 很不好,比如Facebook和Twitter的加密账户页面就无法正常显示。还有就是对于很多SSL连接,每次打开浏览器都会弹出证书无效警告,由于我平时经常用Google的SSL搜索,每次打开新页面都要处理一下那个警告页面,使用久了也会感到不爽。


对于这个问题,GAppProxy项目的Groups上也讨论了很久,可解决方案不是太繁琐就是不完善,毕竟这只是个非商业项目,开发人员都是出于兴趣和爱好来维护,你也不能奢求太多。

后来在Twitter上偶然见一位网友提到另一个基于GAE的代理服务——WallProxy,据说可以很好地支持https,甚至还可以导入根证书而一劳永逸地解决SSL问题。

我顿时眼前一亮,连忙去搜索WallProxy的相关页面,很快看到步调博客上的《使用Google App Engine+WallProxy来看YouTube和玩Twitese》(传送门:http://www.budiao.biz/google-app-engineWallProxy.html),然后按照博主的方案一路操作下来,挂上代理一试——加密网站可以正常访问了~然后又试了下WallProxy独有的多app共存实现负载均衡技术,感觉也很不错,这下我申请的多个GAE-app地址都能派上用场,也不用担心每天1G的流量限制了。

虽然前文已经给出了完整的内网穿越外网的攻略,但鉴于WallProxy对加密服务的改善和灵活配置,我还是决定补充一个GAE的番外篇,把WallProxy隆重推荐给大家。

不过这里先说明下,WallProxy的设置步骤比之GAppProxy是比较繁琐的,而且你还要预装Python环境,如果实在懒得费功夫,而且对SSL应用要求不高的话,用GAppProxy代理足矣。

好,关于WallProxy的背景介绍到此为止,下面跟我来一起摆平这个不可多得的上网利器吧~

3.1 拥有至少一个GAE应用地址(方法同2.1~2.2)

3.2 安装Python

要求2.5以上,3.0以下版本。建议下载步调博主提供的压缩包(传送门:http://dl.dbank.com/c003f1c64w),这个压缩包已经包含了下文将要用到的所有工具,挺方便。

3.3 安装GAE SDK

SDK可以去GAE官方页面下载(传送门:http://code.google.com/intl/zh-CN/appengine/downloads.html)或者用3.2节给出的压缩包。

SDK这个套件不是必需的,但由于SDK用来管理上载服务实在很便捷,远比命令行来得直观,推荐安装。而且以后如果用到其他GAE服务(比如自建博客,自架Twitter API等)也会用得到。

如果你实在不想往电脑安装什么,可以用一个第三方上传工具SDUpload(传送门:http://code.google.com/p/sdapp/downloads/detail?name=SDUpload%200.1.rar&can=2&q=),不过对不熟悉命令行操作的人来说用起来稍显不便,这里不再赘述。

下文还是以SDK操作为例。

3.4 设置SDK

1)安装完SDK后,启动“Google App Engine Launcher”程序(图标是一个涡轮引擎),打开Edit-Preference;

2)Python栏选择你的Python安装路径;

3)App Engine SDK栏选择你的SDK安装路径;

4)Editor栏可选一个你用着顺手的编辑器,也可空着(默认为写字板);OK。


3.5 配置上传文件

1)去WallProxy的下载页面下载WallProxy工具包(V0.3.7_for_windows版传送门:http://code.google.com/p/wallproxy/downloads/detail?name=wallproxy-win.7z&can=2&q=),或者使用3.2节给出的压缩包;

2)解压缩后得到三个文件夹:gae_server、php_server、local;

3)启动Google App Engine Launcher;

4)打开File-Existing Application,在Application Path中指定三个文件夹中的gae_server所在的硬盘地址,点击“Add”;

5)此时会发现SDK窗口中添加了一行内容,选中,然后点击“Edit”按钮,开始编辑app文件;

6)把application:后面的“your-gae-id”替换为你自己创建的GAE-app名称,即Application Identifer,保存;



7)回到SDK面板,你会发现name一栏中已经更新为你刚刚替换的Application Identifer;

点击“Deploy”,然后在打开的窗口中输入你的Gmail账号、密码;

点击“OK”,开始上传;



8)上传成功后即可关闭SDK程序。

3.6 添加APPSPOT与GOOGLE的IPv6地址的HOSTS地址映射(同2.5节)。

3.7 配置本地代理

1)打开三个文件夹中的local,点击WallProxy.exe;

2)点击“设置”按钮;

在打开的窗口中,把紧跟GAE_PROXY的一行中的’url’后面的地址替换为你自己的GAE应用地址,格式为’http://XXXXXX.appspot.com/fetch.php’(注意是php),确定退出;

3)点击“启动”按钮,此时若一切操作无误,代理便开始工作了;

4)设置浏览器代理地址为:127.0.0.1:8086(注意是8086,GAppProxy的是8000)。

现在随便打开一个网站试试吧~不出意外的话,你已经能够畅游万维网了!

3.8 WallProxy拓展应用

1)设置多GAE-app,只需在本地代理设置中添加多行GAE-app url即可(当然前提是这些GAE-app已经开通并且配置成功,检验是否配置成功的方法是:在浏览器中打开这个url,如果页面自动跳转到一个叫做“和 谐社”的Twitter页面,就表示成功了- -III)



2)导入ca根证书

这是WallProxy的特色功能,也是我青睐它的主要原因;

在第一次执行WallProxy.exe后,会在local文件夹下生成一个cert文件夹,打开后会看到一个ca证书文件;



打开后点击“安装证书”,然后按照提示将之装入“受信任的根证书颁发机构”;



安装完成后再打开任何SSL等加密连接,都不会再出现使用GAppProxy时遇到的证书无效问题。

终于可以把默认搜索引擎设为Google with SSL了~

3.9 WALLPROXY与GAppProxy同时使用

虽然WallProxy已经足够优秀,但我还是不愿让它彻底取代GAppProxy,GAppProxy的简单易用特性还是蛮招人喜爱的;另一方 面,毕竟人家做这个完全是义务劳动,再加上n多“不可控”因素(你懂的),谁也说不准某天某时某个代理就挂了,到那时该如何是好?

不如两个代理服务共存吧~

可以吗?

可以的~就算你手头只有一个GAE-app,也可以同时开两个代理!

还是以前文我申请的名为uestcproxy的GAE-app为例,现在已有http://uestcproxy.appspot.com /fetch.py配置为我的GAppProxy代理服务器,如果我再用SDK的把uestcproxy配置为WallProxy的代理服务器的话,很显然GAppProxy就不能用了。

解决思路就在于每个GAE-app服务其实可以有多个版本,不同版本对应不同的地址,然后让GAppProxy和WallProxy客户端代理不同的地址,就不会产生冲突了。

具体操作步骤如下:

1)在3.5节中,注意app文件内容中第二行有“version”,这就是版本号,默认为1;

现在将之改为2。然后保存,上传。



2)此时GAE将会为你分配两个不同的地址,分别是:

http://1.latest.uestcproxy.appspot.com

http://2.latest.uestcproxy.appspot.com

对应两个不同的版本。



你若输入http://uestcproxy.appspot.com/fetch.php,回车后将显示错误;

而如果改换成http://2.latest.uestcproxy.appspot.com/fetch.php,就可以顺利跳转到那个Twitter页面了~

3)现在,把WallProxy的设置页面中的url改成http://2.latest.uestcproxy.appspot.com/fetch.php,就可以顺利使用WallProxy代理上网了~



4)对于GAppProxy端,则无需任何改动。

这是因为,尽管http://1.latest.uestcproxy.appspot.com为版本1的地址,但它同时也是默认版本,而默认地址的格式是不变的。

现在,两个代理共存共用了!你可以一个代理用来看Youtube,另一个用来上Twitter,何等的畅快啊~



后记

写这篇文章缘于某日在学校BBS上闲逛,来到IPv6版块,看到大量令人惊奇的IPv6应用文章,其中最令人激动的就是借助更改hosts文件访问几乎所有Google服务,对于我这个Google重度依赖用户,IPv6简直就是福音书。

后来又发生了一件让人很不愉快的事,让我对电信的服务彻底失望。我就想,我们缴的网费并不便宜,却只得到这么差劲的服务,原因还不就是因为它无可动摇的垄断地位,这是多么令人愤懑的事情啊。

作为一个学理工的,我只能从技术上寻找对策了。

恰逢在Google Reader中看到一篇介绍GAE的文章,其中提到了搭建个人GAE应用,然后可借助GAppProxy代理上网。

在此之前,我已经用过了不下5种代理工具,然而要么我对其安全不放心,要么效果差强人意。

有着Google血统的东东,应该不会让人失望吧?

抱着尝鲜的心态(凡是跟Google沾边的服务,我总是要试一试的),用自己的Gmail账号建立了一个GAE应用,然后下载GAppProxy工 具包,简单几步配置完成后,打开浏览器一试,OMG,这速度真快啊!除了个别SSL网址打开有异常外,其他一切服务堪称完美~我从未想象在景德镇看 Youtube,缓冲速度会这么猛。

爽了一段时间后,我的网费再次告急。

在去购买新的充值卡的路上,我突然想到在我的hosts文件中包含了大量Google的IPv6地址,让我得以直接从内网访问Google,那么,为何不能以此为通道,借Google作跳板,直接从内网访问公网呢?

思路有了,剩下的一切都好办。
一天之内,我就搞定了所有的配置工作,然后成功登录自己的Blog。

感谢教育网率先开通IPv6服务,感谢GFW的技术迟钝以致IPv6至今仍是一方净土,感谢Google一如既往地提供上乘的互联网服务,感谢那些热心的人编写出如此强劲的代理程序。

采用这种依托GAE平台的代理服务上网,最实际的效益就是:网费开支为零——没有哪位同学要请我喝一杯么?

不过最令我感到欣慰的,并非省去了一笔网费,而是我在完全合理、合法的情况下,完成了一次对既有约束的突破。

在这个死气沉沉的大局域网之内,我通过某种不温不火的方式为自己找到了一丝自由的感觉,这,才是最大的收获。

后记的后记

1.老实说,因为我并非内网用户,所以对这篇文章的感触还不是那么强烈,不知道作为内网用户的你的感触呢?

2.为了对与非同学的辛勤劳动和对我的信任的感谢,我送出了两张也就是价值100元的极客库的代金券,礼轻情意重。

3.望月的博客继续欢迎高质量的投稿和评论,上篇文章的最佳评论为来自syna同学的评论,尽管只有寥寥几句“看了你这篇文章,我做了一个非常艰难的决定,在我潜水这么多年之后,我决定出来冒个泡……”,但是,你把我打动了。

文章的word文档下载

文中用到的Host列表下载

Quote Of The Day