自由的风's Archivers

From 自由的风 on 2011-07-02 22:49:22

RSS订阅的自定义域名

WordPress默认提供FEED订阅接口,但其默认订阅地址却比较难记、难输入。WordPress的原始FEED地址有:
http://example.com/?feed=rss
http://example.com/?feed=rss2
http://example.com/?feed=rdf
http://example.com/?feed=atom
这几种,其中的区别是针对不同的协议进行不同的优化,以适应不同的订阅设备。
我之前的处理方法一直是通过Feedsky来进行烧录,然后绑定域名feed.loosky.net提供对外访问。Feedsky本来是一个很优秀的服务,但最近两年基本上没有什么更新,处于亚死状态。而最近一两个月的时间内,更是故障频发,之前是订阅不能更新,这次又出现了类似的状况,官方的说法是:

上周由于雷雨造成IDC机房突然断电,导致了我们服务中断及部分设备损坏,目前故障设备仍在修复中,受影响服务包括:部分域名绑定Feed的输出和订阅统计、邮件相关服务(邮件订阅);另外从近两天Google Reader来访日志看,有Feed停滞更新及订阅数未返回的情况,目前尚无法确定是否与未恢复服务器有关;我们正在努力尽快恢复正常服务,给您带来了不便非常抱歉。
这个仅在论坛上有提一下,估计多数网友可能都还不清楚。

碰到这种情况也比较头疼,只能临时采取一种措施重新进行烧录:
1、新建一子站,我的是feed.loosky.net
2、绑定RSS Feed域名feed.loosky.net到新建站点并确认解析成功
3、将以下代码保存为index.php并上传至新建站点的根目录下:

< ?php header("Content-Type: application/xml; charset=utf-8") ;
@readfile("http://loosky.net/?feed=rss2");
?>
如果出现错误或者读取不到文件的话,也可以使用下面的代码:

< ?php header("Content-Type: application/xml; charset=utf-8");
$contents=file_get_contents("http://loosky.net/?feed=rss2");
echo $contents;
?>
当然这两个函数readfile()和file_get_contents()都需要打开 allow_url_fopen。
方法:编辑php.ini,设置allow_url_fopen = On,allow_url_fopen关闭时fopen和file_get_contents都不能打开远程文件。

这样做可以尽量保留我之前的订阅地址,能够正常输出FEED内容,完全符合我的需求。但是毫无疑问,如果订阅比较多的话,这对主机的性能是提出了更高的要求的,期待更好的解决方案!

不知道QQ会不会提供RSS烧录的功能呢???

查看完整版本: RSS订阅的自定义域名

From iSayme on 2011-07-03 12:07:15

怪不得 阅读器里面一直没有你的文章 原来是这个原因啊

From 自由的风 on 2011-07-03 12:09:17

@ iSayme 呵呵,刚刚调试好,就被你发现啦。 :gl:

From 二黑 on 2011-07-03 15:23:16

我一般都是直接订阅别人的主机feed而不是feedsky,呵呵 :lol:

From 自由的风 on 2011-07-03 15:37:12

@ 二黑 这样当然是咯,也要照顾到每个人的不同啊。

From 流金漩涡 on 2011-10-04 23:14:53

你这样是不是相当于给自己的wp的rss开了缓存呢?

From 自由的风 on 2011-10-04 23:17:29

对的,目前使用情况还是比较良好的。至少比feedsky要稳定,呵呵。

From 流金漩涡 on 2011-10-04 23:19:19

@流金漩涡 那我现在用的是domain/feed这个地址,如果想加上缓存,应该怎么做呢?这个rss问题困扰了我很久,feedsky实在抽得厉害。

From 自由的风 on 2011-10-04 23:24:47

把 http://loosky.net/?feed=rss2换成你的http://www.cycley.com/feed/ 即可。你试试。

From 流金漩涡 on 2011-10-04 23:28:29

@流金漩涡 我现在是用domain/feed这样的地址给人订阅,可以修改上有缓存机制吗?或者我得301domain/feed到feed.domain.com?

From 自由的风 on 2011-10-04 23:59:33

不用,按照本文说的就可以实现你想要的功能啊,不用301。

Tags: PHP, RSS, WordPress


©自由的风