2009年2月18日星期三

开源代理软件GAppProxy

  前些天发现了一个开源的HTTP Proxy软件GAppProxy,使用了几天,发现其速度非常快,很值得推荐。

  GAppProxy使用Python编写并运行于Google App Engine上。GAppProxy是一个完整的Proxy解决方案: 与常见的HTTP Proxy不同,GAppProxy运行在Google App Engine上,不需要专门的服务器,这是最大优势.

  普通Windows用户下载并运行解压GAppProxy,然后双击运行gui.exe.之后配置IE或Firefox浏览器,设置HTTP代理为127.0.0.1:8000.然后就可以通过代理上网了。

开源代理服务器软件GAppProxy

  这种代理速度的确非常快,大概因为Google App的服务器速度快的原因,虽然该版本目前尚不支持HTTPS,但对于普通网站访问效果很好,包括域名被和谐的网站都可以正常访问。

  不过有个问题是,使用人数多的话可能会有流量限制,建议自己申请一个Google App站点,下载其源代码,修改app.yaml,然后将其上传到自己的Google App目录下,修改proxy.py或者配置文件,使其指向自己的Google App站点,这样就能避免过多人访问造成的流量问题了。

Google发布开源博客搬家软件

  据Google Open Source博客报道,Google上周五发布了一款博客搬家工具Google Blog Converters,使用者将可以在WordPress、LiveJournal和Google自家的Blogger博客网站之间携带博客文章图片甚至是评论等数据方便地“搬家”。 

  Google Blog Converters可协助用户在不同的博客网站间自由地搬迁内容,不仅仅包括博客正文,甚至连评论都可以一并转移至新的博客网站。目前发布的程序支持Google自家的Blogger,WordPress,LiveJournal和MovableType。  

  此外这一项目是开源项目,开发小组将程序源代码托管在Google App Engine上,任何人都可以下载代码并进行适当的修改。

  对于数据量较小的博客,可使用该项目提供的 Google App Engine 服务进行在线数据格式转换:

  Blogger to WordPress: http://blogger2wordpress.appspot.com/

  WordPress to Blogger: http://wordpress2blogger.appspot.com/

  Livejournal to Blogger: http://livejournal2blogger.appspot.com/

  MovableType to Blogger: http://movabletype2blogger.appspot.com/

  数据量较大的博客,则不妨自行下载源码,运行相关脚本转换数据格式。

  此前,Google Blogger 已推出了博客导入/导出功能,以便迁移、合并、备份博客数据。

2009年2月16日星期一

Z-Blog Akismet插件更新升级

  今天将前些天写的Z-Blog Akismet插件进行了更新,增加了一个新功能——“标记垃圾评论”。主要用于将那些没有被Akismet发现的垃圾评论提交到Akismet的黑名单数据库中。这样,Z-Blog Akismet插件就已经具有WordPress Akismet插件的所有主要功能了。

  新增提交功能也是非常必要的,在我启动了Z-Blog Akismet插件之后,垃圾留言虽然明显减少了,但是还是有一些漏网之鱼,没有被Akismet插件发现,新的更新版本,具有标记垃圾留言并提交到远端Akismet的黑名单数据库的功能,一旦将该信息提交到Akismet的服务器,那么下次再碰到类似域名的垃圾留言,Akismet就会准确的判断出这是垃圾留言了。这也就是Akismet服务强大的地方,一个会自动学习的软件服务,全世界的Blogger都在帮助Akismet学习。

  如果你以前下载过Z-Blog Akismet插件,请备份Akismet API Key,然后更新这个插件,更新完成后请重新录入Akismet API Key即可。

  点击下载最新版Z-Blog Akismet插件

2009年2月15日星期日

谷歌、雅虎、微软推出复制内容规范

  据Google网站管理员博客报道,谷歌、雅虎、微软将支持一个新的标准,允许网站管理员从自己的网站去除复制内容(重复内容),这将使搜索结果更全面和规范。

  所谓Duplicate Content(复制内容、重复内容)指的是是指同一域名或者跨域名之间的大段内容完全一样或者非常近似。例如Discuz论坛的帖子都有另一个打印版或者手机版,因此在不同的URL地址产生了几乎完全相同的内容。不同网站之间的转载也是另一种类型的复制内容。通过新的规范,可以让搜索引擎能否顺利知道该内容的首选版本。

  具体的方法是,在复制内容的网页<head>区域,增加一行,内容类似:

  现在,您只需添加此<link>标记来指定您的首选版本:

  <link rel="canonical" href="http://www.williamlong.info/default.html" />

  里面的链接地址为首选链接地址,这样,Google就能快速将复制内容排除在外,而重点提高首选链接地址的排名。

  据Google介绍,该标记对于完全不同的域名内的复制内容是不起作用的,对于不同的域名,Google建议使用301重定向来减少复制内容。

2009年2月14日星期六

谷歌中国推情人节地图和短信

  情人节,即每年的2月14日,是西方的传统节日之一。男女在这一天互送巧克力、贺卡和花,用以表达爱意或友好,现已成为欧美各国青年人喜爱的节日。谷歌中国与简单生活网联合发布的“北京情人节地图”给北京的青年男女带来更多的情人节构想。

  “北京情人节地图”(ditu.google.cn)是与简单生活网联合推出,这张地图为北京地区的网民提供了15种情人节的节日选择,既有“创意礼品”、“鲜花速递”、“巧克力店”等情人节礼物的信息,也有“情调酒吧”、“短途旅行”、“演出派对”等情人节活动的建议。

  另外,谷歌还推出了情人节祝福短信热榜,可以将最流行的情人节短信免费发送到自己的手机上。这个免费短信服务是在去年中秋节的时候推出的。

2009年2月12日星期四

基于ASP的Z-Blog Akismet插件

  使用WordPress的用户一定知道Akismet这个插件,Akismet是应用广泛的一个垃圾留言过滤系统,其作者是大名鼎鼎的WordPress创始人Matt Mullenweg,Akismet也是WordPress默认安装的插件,其使用非常广泛。

  由于我使用的是基于ASP的Z-Blog系统,无法直接使用基于PHP的Akismet插件,因此以前我使用的是Z-Blog的Totoro和我自己写的反垃圾留言插件,但是在使用过程中,我发现了一个很大的问题,就是垃圾留言Spam黑名单数据量小,判断逻辑简单,不能自动更新,因此会漏掉很多垃圾留言,现在搞Spam的人都精的很,我自己写的反垃圾留言算法,无论如何细化,无论采取何种严厉的甚至影响正常留言的算法,都难以做到绝对精准的判断,因此我还要不断手动删除系统中的垃圾留言,久而久之,烦不胜烦。

  做为对比,专业的反垃圾服务具有海量的关键字库,这方面的最佳代表就是WordPress插件Akismet,我在WordPress中使用这个插件,几乎从来不用担心垃圾留言的问题,几乎99%以上的垃圾留言都被系统自动拦截了。做为反垃圾留言中的专家,Akismet的主要优点就是更新快,能够智能识别最新的垃圾留言,判定是否垃圾留言由Akismet服务商决定,误判率很低,因为Akismet用户很多,因此其他Blog手动标记垃圾留言后,发送者的链接会被自动加入Akismet系统的黑名单,世界各地的用户时时刻刻都在为Akismet共享资源,使得Akismet能识别的垃圾留言非常广泛,成为反垃圾Spam服务中的佼佼者。

  因此,我打算放弃现有的反垃圾留言策略,停用Totoro和月光Z-Blog反垃圾留言过滤插件,直接调用Akismet的接口来实现反垃圾留言。

  可惜的是,Z-Blog目前并没有Akismet插件,只有WordPress有Akismet插件,我有两个选择,或者将博客系统迁移到WordPress,或者自己开发一个基于Z-Blog的Akismet插件,经过反复抉择,我选择了后者,自己开发一个基于Z-Blog的Akismet插件。

  通过研究Akismet API和相关资料,终于花了一个中午时间写好了这个插件,插件的界面如下图所示。

Z-Blog Akismet插件

  启用Akismet插件后,需要填写一下Akismet API Key,这个Key要翻墙到WordPress网站上申请,如果大家不会,可以使用我截图中我自己申请的Akismet API Key,不过如果你的博客流量很大,建议还是自己申请Akismet API Key,否则可能会导致这个共用Key失效。

  另一个选项是启用垃圾留言手动审核,当Akismet检测到一个垃圾留言后,我这个插件有两种处理方式,一种是将留言放到审核区,手动审核后才显示出来,一种是直接删除,如果你信得过这个插件,就选择直接删除,不要手动审核了。

  插件下载:点击这里下载“Z-Blog Akismet插件”,压缩包中包含ZPI自动安装格式的文件,也包含手动安装的目录和文件,已经安装了Plugin Sapper的可以直接导入ZPI文件。

  发送垃圾留言的童鞋们请注意,要是你不想进Akismet的数据库,就不要继续在这里发广告啦。

  附录:Akismet API Key 申请攻略

  Akismet是wordpress过滤垃圾留言的一个插件,将这个插件启用后,并不能马上工作,还要对Akismet进行配置,要输入一个序列号才可以使用。

  访问http://wordpress.com,在首页上点击注册新用户。

  输入注册信息,注意,一定要保证邮件的正确性,因为WordPress的激活链接是发到你输入的邮箱里的。

  接收邮件,点击链接激活。

  最后收到一封确认邮件,里面就包含着Akismet的API Key。或者登陆http://wordpress.com,在http://wordpress.com/profile/中也可以见到Your API Key。

2009年2月11日星期三

使用Google Sync与诺基亚S60手机同步

  Google最近发布了Google Sync在线手机同步工具,该服务能够把支持SyncML手机的联系人信息与Google服务器进行同步,并在需要时重新传回手机中,支持SyncML协议的手机都可以使用该工具在线同步自己的通讯录,因此中国用户使用众多的诺基亚S60手机也可以使用Google Sync进行同步,由于Google官方的介绍信息是英文的,没有中文介绍,我这里就以中文诺基亚S60第三版手机系统为例,详细介绍一下配置步骤。

  确认手机属于诺基亚S60V3的手机,例如N73/N78/N79/N81/N82/N85/N95/N96等等。

  在手机上,打开“工具”-“同步处理”。

Google Sync与诺基亚S60手机同步

  点“选项”-“新同步情景模式”,增加一个新的同步配置,名称取为“Google sync”。

Google Sync与诺基亚S60手机同步

  这时候点“应用程序”,设置一个同步应用,对于诺基亚S60手机,Google Sync只支持通讯录的同步。选择“名片夹”,“是否同步”选择“是”,“远程数据库”输入contacts,必须是小写字母,“同步类型”为“双向”。

Google Sync与诺基亚S60手机同步

  接着修改“连接设置”,“服务器版本”为1.2,“服务器识别码”为Google,字母G必须是大写,数据承载方式为“互联网”,“接入点”选择默认。

Google Sync与诺基亚S60手机同步

  接下来,“主机地址”输入https://m.google.com/syncml,“端口”为443,用户名为你的Gmail用户名,密码为Gmail密码。

Google Sync与诺基亚S60手机同步

  设置好了以后,就可以进行在线同步了,同步的过程将会双向同步手机名片夹和Gmail通讯录里面的联系人。同步前请先做好备份操作。

  Gmail通讯录里面如有存在一些自动添加的联系人,可以选择该联系人,点“组”-“删除……通讯录”即可将联系人移出通讯录,但这个联系人还是存在“所有联系人”之中。

  同步完成之后,可以按照用户名进行搜索,然后选中两个相同的联系人,点“合并2个联系人”即可将联系人合并。

  同步之后,你在Gmail联系人删除或者修改的操作,再下一次同步进行后会自动更新到手机上,反之亦然。