Thursday, February 9, 2012

博客feed在feedsky和feedburner之间自由切换

2009-08-18 by zhiwei  

这几天来,我一直在研究博客feed的发布问题,到底应该让用户使用哪个地址来阅读博客feed。很多人都选择使用博客子域名来作为feed的发布地址,这样的话就不怕博客来回搬家了,尤其是像我这样的穷学生用的都是免费博客,所以很有可能会博客搬家,这样的话选择一家优秀的feed托管商是非常重要的。国内的feed托管商也就是feedsky最牛了,支持免费绑定子域名,客服的服务态度也很好,我之前给他们客服发了几封邮件,都是很快就得到了回复,很喜欢feedsky的客服。

最近我也看了很多关于feed的文章,还有关于 feedskyfeedburner 以及将feed放在自己的子域名下的好处等等。通过这几天的观察,我发现越来越多的博主从feedsky转向了feedburner,现在feedsky 的用户N多,而feedsky又是一个小公司,服务器受不了这么多feed的压力,所以有时会出问题。我刚才在博客上写了一篇文章,发现不到半小时就被 feedburner 给收录了,而直到现在还不见feedsky有那篇文章的影子,看来是时候换博客的feed了。

虽然 feedsky 与 feedburner 都支持域名绑定,可我发现 feedsky 与 feedburner 的域名绑定方式是不一样的。feedsky是直接将一个feed绑定在一个子域名下,而feedburner是将一个feed放在绑定域名的子目录下。如:我的feedsky的feed地址是:http://feed.feedsky.com/chenzhiwei 我可以绑定feed.chenzhiwei.net 到该feed上;而feedburner是这样的:我的feedburner的feed地址是:http://feeds.feedburner.com/chenzhiwei 我如果将feeds.chenzhiwei.net绑定在feedburner帐户上的话,那么我的feedburner地址是 http://feeds.chenzhiwei.net/chenzhiwei ,这一点feedburner让我很不爽,希望feedburner也能像feedsky那样,用户可以选择自己的一个feed直接绑定在子域名下,这样就完美了,我们在转移feed的时候也很方便了,如果feedburner被墙,我们可以把域名再重新绑定在feedsky上面。

我在月光博客里看到了一个方法,可以在feedsky与feedburner之间来回切换,就是将自己的子域名绑定在空间的一个子目录上,然后在该目录下创建一个默认首页文件(PHP空间一般默认首页为index.php),放上以下代码

1
2
3
4
<%
header(”Location: http://feeds.feedburner.com/chenzhiwei”); /* 重定向浏览器 */
exit;
%>

就可以了,经过我的测试发现,该代码就是PHP的网页重定向,但是有一点我不明白,不知道为什么在google reader里输入该地址可以订阅feed。这样一来,就可以在各个feed之间来回切换了,但是有个问题,你必须要得有个能绑定子域名到子目录的空间, 如果你是用的godaddy域名就方便多了,可以用godaddy提供的免费空间来实现该功能。没有在godaddy注册域名也没关系,我们可以使用GAE来实现同样的功能。首先注册一个GAE的application ID,然后绑定子域名到该ID上,如果我的ID是feed-s,我把子域名feed绑定上去,即 feed.chenzhiwei.cn ,然后按照GAE for JAVA的说明,来创建一个新的GAE for JAVA项目,设置默认首页为index.jsp,然后将以下代码放入index.jsp中

1
2
3
4
5
<%
response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY);
String newLocn = "http://feeds.feedburner.com/chenzhiwei";
response.setHeader("Location",newLocn);
%>

上传项目到GAE,这样一切就搞定了,如果哪天feedburner被封了,你可以再将域名转向feedsky,这样就可以实现feedsky与feedburner之间自由切换了,用户也不会感觉到有什么不正常的。当然,如果feedsky的服务超过feedburner的话,我还会再次选择feedsky的。这不是一个完美的方法,希望feedburner能让用户自己选择一个feed放在子域名下,而不是子域名的目录下。还有一点,就是该方法其实是一个网址跳转,当你从浏览器里打开feed.chenzhiwei.net时你会发现,该子域名会自动跳转到我的feedburner

这是本博客的 feed:  http://feed.chenzhiwei.net 欢迎订阅本博客。

PS:(更新)刚刚发现了个问题,这样做不是很好。

© 2009, chenzhiwei.net. 版权所有.
本文永久链接:http://chenzhiwei.net/2009/08/feedsky-and-feedburner/

Comments

7 Responses to “博客feed在feedsky和feedburner之间自由切换”
  1. blinux 说道:

    最近我也弄了一个Feed.

    http://feed.blinux.cn/

  2. laofan 说道:

    研究的很仔细啊,感觉feedsky不和袄,不稳定

  3. laofan 说道:

    我已经订阅你了

  4. joojen 说道:

    我现在也开始倾向于将feed托管与feedburner,其实用不用二级域名绑定feed我认为并没有多大却别,因为基本没有几个人订阅别人博客的时候是手动输入的。feedburner即使在最黑暗的岁月里,使用feedproxy.google.com/***这样的形式还是能订阅的。

  5. 红得发指 说道:

    楼上这哥们(joojen)网站删留言有点凶呵,比zf的还严,还随心所欲,只要对其不好的全TMD删了,正常的讨论你也删,真有病。
    对不起,zhiwei,我是说上面的这位。删我留言实在删的闹心。
    我认认真真的留言和你讨论,你粗鲁的把我的最后一条留言删了,好像把我说的哑口无言了一样,真鄙视这样的人……

  6. 短歌行 说道:

    就是有时候FEED没有能及时更新。

  7. 香草 说道:

    恩 其实可以二者共用

Speak Your Mind