更改RSS项目GUID或Atom条目ID的后果是什么?

时间:2013-09-22 14:52:03

标签: rss feed atom-feed

当我对博客中的文章进行实质性更新(不只是更正错字)时,我想确保读者在其新闻Feed中再次看到更新后的文章。根据我的阅读,以下是我看到的一些选项:

  1. 创建一篇全新的文章(主要是原文的副本)。显然是一个坏主意 - 重复内容对SEO不利。
  2. 更改文章的已发布和/或更新时间戳。在大多数读者看来,这似乎不会使文章显示为未读。
  3. 更改RSS项目GUID或Atom条目ID。根据Atom规范,这是一个很大的NO-NO,但我不确定RSS。
  4. 所以,似乎没有一个好的选择,除非我遗漏了一些东西。

    更改RSS项目GUID或Atom条目ID的后果是什么?饲料警察是否会出现在我的门口更改文章ID?

3 个答案:

答案 0 :(得分:1)

更新该条目的“已更新”字段应该是正确的。不要忘记更新Feed本身的“更新”字段,任何Etags /最后修改的HTTP标头(如果存在但不自动生成),并等待/强制读取器实际进行刷新。

如果您仍然遇到某些读者的问题,请与饲料阅读软件作者联系,看看是否有意。

至于第二部分,更改ID不会让Feed警察在你的门上,但如果它经常发生,那些显示为重复的文章可能会惹恼你的粉丝,只是忽略/放弃饲料。

请参阅thisthis答案

答案 1 :(得分:1)

RSS <guid>Atom <id>是用于唯一标识其父项的元素。 Feed阅读器和聚合器使用此字段来确定是否已下载或获取该项目。

如果您更改了RSS <guid>或Atom <id>,那么读者和聚合器可能会将此作为信号或标记用于再次下载该项目,因为之前不再保留GUID或ID匹配它在数据库或查找中的内容。

更改GUID或ID不是强制更新的方法。这是一种说法,“我有一些全新的东西供您下载/获取”。

在RSS中,如果您将?fake=parameter添加到GUID,这可以作为强制新下载的替代方式。但旧的获取项仍将保留,因为它不共享GUID。

您无法使用发布或更新日期通过RSS或Atom可靠地强制下载。

您可以做的最好的事情就是更改项目的内容,并允许读者或聚合器按照自己的意愿进行更新,因为当他们看到内容发生变化时,他们所做的工作并不是所有工作都相同具有

答案 2 :(得分:1)

在这一点上,两个答案都表明:没有完美的方法。更改guid将使每个人都相信内容是全新的,因此可能会创建重复的内容,并且仅仅元素可能不会总是触发完全刷新。

使用PubSubHubbub可能会有所帮助,因为它很胖。这意味着订户将立即获得更新的数据,并可以将其存储在与先前版本相同的密钥/唯一ID下。