使用 RSS 可以将最新的网络内容从一个网站分发到全球数千个其他网站。

RSS 允许快速浏览新闻和更新。

RSS 文档示例

<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0"> <channel>
<item>
</item>
<item>
</item>
</channel> </rss>

什么是 RSS?

RSS 代表着真正简单的聚合

RSS 允许您对站点内容进行聚合

RSS 定义了一种轻松分享和查看标题和内容的方法

RSS 文件可以自动更新

RSS 允许为不同站点提供个性化视图

RSS 是用 XML 编写的

为什么使用 RSS?

RSS 旨在显示选定的数据。

如果没有 RSS,用户将不得不每天检查您的网站是否有更新。这对许多用户来说可能太耗时了。使用 RSS 订阅(RSS 经常被称为新闻订阅或 RSS 订阅),他们可以使用 RSS 聚合器(收集和排序 RSS 订阅的站点或程序)更快地检查您的网站。

由于 RSS 数据量小且加载速度快,因此可以轻松地与手机或 PDA 等服务一起使用。

具有类似信息的网络环可以轻松地共享其网站上的数据,以使其变得更好且更有用。

谁应该使用 RSS?

很少更新其网站的网站管理员不需要 RSS!

对于经常更新的网站,如:

  • 新闻网站 - 列出带有标题,日期和描述的新闻
  • 公司 - 列出新闻和新产品
  • 日历 - 列出即将发生的事件和重要日期
  • 网站更改 - 列出更改的页面或新页面

RSS 的好处

以下是使用 RSS 的一些好处:

选择您的新闻

使用 RSS,您可以选择查看您感兴趣且与您的工作相关的新闻。

删除不想要的信息

使用 RSS,您可以(最终)将想要的信息与不想要的信息(垃圾邮件)分开!

增加您的网站流量

使用 RSS,您可以创建自己的新闻频道,并将其发布到互联网上!

RSS 的历史

  • 1997年 - UserLand 的 Dave Winer 开发了 scriptingNews。RSS 诞生了
  • 1999年 - 网景开发了 RSS 0.90(支持 scriptingNews)
  • 1999年 - Dave Winer 开发了 scriptingNews 2.0b1(其中包含 RSS 0.90 功能)
  • 1999年 - 网景开发了 RSS 0.91(其中包含大多数来自 scriptingNews 2.0b1 的功能)
  • 1999年 - UserLand 摒弃了 scriptingNews,仅使用 RSS 0.91
  • 1999年 - 网景停止了他们的 RSS 开发
  • 2000年 - UserLand 发布了官方的 RSS 0.91 规范
  • 2000年 - O'Reilly 开发了 RSS 1.0。此格式使用了 RDF 和命名空间。
  • 2000年 - UserLand 的 Dave Winer 开发了 RSS 0.92
  • 2002年 - 离开 UserLand 后,Dave Winer 开发了 RSS 2.0
  • 2003年 - 发布了官方的 RSS 2.0 规范

RDF 背后的想法是帮助创建语义 Web。然而,对于普通用户来说,这并不太重要,但是通过使用 Web 标准,人们和应用程序之间交换数据将更容易。

应该使用哪个 RSS 版本?

RSS 0.91 和 RSS 2.0 比 RSS 1.0 更易于理解

RSS 2.0 的语法规则非常简单且非常严格。

RSS 是否是 Web 标准?

RSS 没有官方标准。

大约50%的所有 RSS 订阅使用 RSS 0.91

约25%使用 RSS 1.0

最后25%分为 RSS 0.9x 版本和 RSS 2.0

RSS 如何工作?

RSS 用于在网站之间共享内容。

使用 RSS,您可以向称为聚合器的公司注册您的内容。

因此,要成为其中的一部分:首先,创建一个 RSS 文档并将其保存为 .xml 扩展名。然后,将文件上传到您的网站。接下来,注册一个 RSS 聚合器。每天,聚合器搜索已注册的网站以查找 RSS 文档,验证链接,并显示有关源的信息,以便客户可以链接到他们感兴趣的文档。

XML RSS

RSS 文档使用自描述和简单的语法。

以下是一个简单的 RSS 文档:

<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0"> <channel>
<item>
</item>
</channel> </rss>

文档中的第一行 - XML声明 - 定义了文档中使用的 XML 版本和字符编码。在这种情况下,文档符合 XML 1.0 规范,并使用 UTF-8 字符集。

下一行是 RSS 声明,它标识这是一个 RSS 文档(在本例中是 RSS 版本 2.0)。

接下来的一行包含 <channel> 元素。该元素用于描述 RSS 源。

<channel> 元素有三个必需的子元素:

  • <title> - 定义频道的标题
  • <link> - 定义到频道的超链接
  • <description> - 描述频道

每个 <channel> 元素可以有一个或多个 <item> 元素。

每个 <item> 元素定义了 RSS 源中的一篇文章或“故事”。

<item> 元素有三个必需的子元素:

  • <title> - 定义项目的标题
  • <link> - 定义到项目的超链接
  • <description> - 描述项目

最后,最后两行关闭了 <channel><rss> 元素。

RSS 中的注释

在 RSS 中编写注释的语法与 HTML 类似:

<!-- 这是一个 RSS 注释 -->

RSS 是用 XML 编写的

因为 RSS 是 XML,所以请记住:

  • 所有元素必须有一个闭合标签
  • 元素区分大小写
  • 元素必须被正确嵌套
  • 属性值必须始终用引号引起来

RSS 中的 <channel> 元素

RSS <channel> 元素描述了 RSS 源。

看以下 RSS 文档:

<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0"> <channel>
<item>
</item>
</channel> </rss>

如前所述,<channel> 元素描述了 RSS 源,并有三个必需的子元素:

  • <title> - 定义频道的标题
  • <link> - 定义到频道的超链接
  • <description> - 描述频道

<channel> 元素通常包含一个或多个 <item> 元素。每个 <item> 元素定义了 RSS 源中的一篇文章或“故事”。

此外,<channel> 还有几个可选的子元素。我们将在下面解释最重要的几个。

<category> 元素

<category> 子元素用于为您的源指定一个类别。

<category> 元素使得 RSS 聚合器可以根据类别对站点进行分组。

上述 RSS 文档的类别可能是:

<category>Web开发</category>

<copyright> 元素

<copyright> 子元素通知版权材料。

上述 RSS 文档的版权可以是:

<copyright>2006 Refsnes Data as. 版权所有。</copyright>

<image> 元素

<image> 子元素允许在聚合器呈现源时显示图像。

<image> 元素有三个必需的子元素:

  • <url> - 定义图像的 URL
  • <title> - 如果无法显示图像,则定义要显示的文本
  • <link> - 定义到提供该频道的网站的超链接

元素

<language>子元素用于指定文档所使用的语言。

<language>元素使得 RSS 聚合器可以根据语言对站点进行分组。

上述 RSS 文档的语言可能是:

<language>en-us</language>

<item>元素

每个 <item> 元素定义了 RSS 源中的一篇文章或“故事”。

看以下 RSS 文档:

<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0"> <channel>
<item>
</item>
</channel> </rss>

如前所述,每个 <item> 元素定义了 RSS 源中的一篇文章或“故事”。

<item> 元素有三个必需的子元素:

  • <title> - 定义项目的标题
  • <link> - 定义到项目的超链接
  • <description> - 描述项目

此外,<item> 还有几个可选的子元素。我们将在下面解释最重要的几个。

<author>元素

<author> 子元素用于指定项目作者的电子邮件地址。

注意:为了防止垃圾邮件,一些开发者不包括 <author> 元素。

上述 RSS 文档中项目的作者可能是:

<author>hege@refsnesdata.no</author>

<comments> 元素

<comments> 子元素允许项目链接到关于该项目的评论。

<enclosure> 元素

<enclosure> 子元素允许在项目中包含媒体文件。

<enclosure> 元素有三个必需的属性:

  • url - 定义媒体文件的 URL
  • length - 定义媒体文件的长度(以字节为单位)
  • type - 定义媒体文件的类型

将您的 RSS 源放在网络上

如果其他人无法访问您的 RSS 文档,那么拥有 RSS 文档就没有用了。

现在是时候将您的 RSS 文件放在网络上了。以下是步骤:

  1. 为您的 RSS 文件命名。请注意,文件必须具有 .xml 扩展名。

  2. 验证您的 RSS 文件

  3. 将 RSS 文件上传到您的 Web 服务器上的 Web 目录中。

  4. 将小橙色的 RSS 徽标或 XML 徽标按钮复制到您的 Web 目录中。

  5. 将小橙色“RSS”或“XML”按钮放在您将向世界提供 RSS 的页面上(例如您的主页)。然后在按钮上添加一个链接,该链接指向 RSS 文件。代码将类似于:

  6. 将您的 RSS 源提交给 RSS Feed 目录(您可以在 Google 或 Yahoo 上搜索“RSS Feed 目录”)。注意!您的反馈 URL 不是您的主页,而是您的反馈 URL

  7. 将您的反馈注册到主要搜索引擎:

  1. 更新您的反馈 - 在注册您的 RSS 反馈后,您必须确保定期更新您的内容,并确保您的 RSS 反馈一直可用。

我可以自己管理我的 RSS 反馈吗?

确保您的 RSS 反馈按照您的期望工作的最佳方法是

自己管理它。

然而,这可能非常耗时,特别是对于更新频繁的页面。

另一种选择是使用第三方自动化的 RSS。

自动化的 RSS

对于只需要个人网站的用户来说,一些提供内置 RSS 服务的最受欢迎的博客(Web Log)管理器包括:

  • Wordpress
  • Blogger
  • Radio

RSS阅读器

RSS阅读器用于阅读 RSS 源!

对于许多不同的设备和操作系统,都有各种不同的 RSS 阅读器。

有很多不同的 RSS 阅读器。有些作为 Web 服务,有些限于 Windows(或 Mac、PDA 或 UNIX):

  • QuiteRSS - 一个开源、跨平台的 RSS/Atom 新闻源阅读器
  • FeedReader - 一个简单、直接的源阅读器,可以轻松处理大量的源

提示:大多数浏览器都有内置的 RSS 阅读器。如果您访问提供 RSS 源的网站,您将在地址栏或工具栏中看到一个 RSS 图标。单击该图标即可查看不同的源列表。选择您想要阅读的源。

我有一个 RSS 阅读器。现在该怎么办?

单击您想要阅读的 RSS 源旁边的小 RSS 徽标或 XML 徽标按钮。复制您在浏览器窗口中获得的 URL,并将其粘贴到您的 RSS 阅读器中。

RSS参考

<channel> 元素

“元素”列中的链接指向每个特定元素的更多信息。

元素 描述
<category> 可选。为源定义一个或多个类别
<cloud> 可选。注册进程以立即通知更新源的更新
<copyright> 可选。通知有关受版权保护的材料
<description> 必需。描述频道
<docs> 可选。指定用于源中使用的格式的文档的 URL
<generator> 可选。指定用于生成源的程序
<image> 可选。允许在聚合器呈现源时显示图像
<language> 可选。指定源的语言
<lastBuildDate> 可选。定义源内容的最后修改日期
<link> 必需。定义到频道的超链接
<managingEditor> 可选。定义源内容的编辑的电子邮件地址
<pubDate> 可选。定义源内容的最后发布日期
<rating> 可选。源的 PICS 评级
<skipDays> 可选。指定聚合器应跳过更新源的日期
<skipHours> 可选。指定聚合器应跳过更新源的小时
<textInput> 可选。指定应与源一起显示的文本输入字段
<title> 必需。定义频道的标题
<ttl> 可选。指定源可以在从源刷新之前缓存的分钟数
<webMaster> 可选。定义源的 Web 主管的电子邮件地址

<item> 元素

元素 描述
<author> 可选。指定项目的作者的电子邮件地址
<category> 可选。定义项目所属的一个或多个类别
<comments> 可选。允许项目链接到有关该项目的评论
<description> 必需。描述项目
<enclosure> 可选。允许在项目中包含媒体文件
<guid> 可选。为项目定义唯一标识符
<link> 必需。定义到项目的超链接
<pubDate> 可选。定义项目的最后发布日期
<source> 可选。指定项目的第三方来源
<title> 必需。定义项目的标题

最后

为了方便其他设备和平台的小伙伴观看往期文章:

微信公众号搜索:Let us Coding,关注后即可获取最新文章推送

看完如果觉得有帮助,欢迎点赞、收藏、关注

RSS 解析:全球内容分发的利器及使用技巧的更多相关文章

  1. CDN(内容分发网络)技术原理

    1. 前言 Internet的高速发展,给人们的工作和生活带来了极大的便利,对Internet的服务品质和访问速度要求越来越高,虽然带宽不断增加, 用户数量也在不断增加,受Web服务器的负荷和传输距离 ...

  2. CDN 内容分发网络技术

    1.前言 Internet的高速发展,给人们的工作和生活带来了极大的便利,对Internet的服务品质和访问速度要求越来越高,虽然带宽不断增加,用户数量也在不断增加,受Web服务器的负荷和传输距离等因 ...

  3. 深度剖析:CDN内容分发网络技术原理--转载

    1.前言 Internet的高速发展,给人们的工作和生活带来了极大的便利,对Internet的服务品质和访问速度要求越来越高,虽然带宽不断增加,用户数量也在不断增加,受Web服务器的负荷和传输距离等因 ...

  4. http 协议_DNS_域名解析 DNS 服务器_内容分发网络 CDN_缓存机制_HTML5 浏览器存储技术_cookie_sessionStorage_localStorage

    TCP/IP 协议族 是按层次去划分的 应用层    决定了向用户提供应用服务时通信的活动. FTP 协议(文件传输协议)DNS(域名协议)HTTP(超文本传输协议) 传输层    提供处于网络连接中 ...

  5. [转]CDN(内容分发网络)技术原理

    1. 前言 Internet的高速发展,给人们的工作和生活带来了极大的便利,对Internet的服务品质和访问速度要求越来越高,虽然带宽不断增加, 用户数量也在不断增加,受Web服务器的负荷和传输距离 ...

  6. 史上最全的CDN内容分发网络实战技巧(网络优化)

    今天来给大家分享下关于 CDN 的东西,以及我自己的一些发现.一些个人的拙见.总共分为 3 个部分:原理.详解.各种坑. 首先说一下 CDN 的基本原理部分,主要分 4 块来描述:CDN 的由来.调度 ...

  7. 全局负载均衡与CDN内容分发

    CDN简介 CDN的全称是Content Delivery Network,即内容分发网络.CDN是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡.内容分发. ...

  8. Web前端性能优化教程02:使用内容分发网络

    基础知识 服务器离用户越近,HTTP请求的响应时间将更短. CNAME:别名记录,当多个域名需要指向同一服务器IP,可以使用一个域名做A记录指向该服务器IP,然后让多个域名指向该A记录. ICP:In ...

  9. CDN内容分发网络

    CDN的全称是Content Delivery Network,即内容分发网络,其设计思想是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快.更稳定. CDN系统是在网络 ...

  10. CDN加速-内容分发网络

    内容分发网络 (互联网技术) 编辑 CDN的全称是Content Delivery Network,即内容分发网络.其基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输 ...

随机推荐

  1. 阿里云RemoteShuffleService新功能:AQE和流控

    ​简介:阿里云EMR自2020年推出Remote Shuffle Service(RSS)以来,帮助了诸多客户解决Spark作业的性能.稳定性问题,并使得存算分离架构得以实施.为了更方便大家使用和扩展 ...

  2. 2019-2-21-PowerShell-通过-WMI-获取补丁

    title author date CreateTime categories PowerShell 通过 WMI 获取补丁 lindexi 2019-02-21 20:39:51 +0800 201 ...

  3. 10.Sidecar代理:日志架构

    官方文档:https://kubernetes.io/zh-cn/docs/concepts/cluster-administration/logging/ 题目:Sidecar代理 设置配置环境ku ...

  4. ruby中的Hash排序

    参考: https://blog.csdn.net/xing102172/article/details/9163607 For example: h={'a'=>2, 'c'=>1, ' ...

  5. linux系统共享文件夹到局域网

    python3 -m http.server https://blog.csdn.net/a772304419/article/details/113338103 Debian下配置Samba服务器 ...

  6. Docker打包程序镜像

    简介 做了一个视频检测程序,它是由golang和c++编写的.因为公司要做私有化部署,因此需要打包成镜像然后放到公司的registry镜像仓库里.之前一直没有去熟悉docker,现在刚好机会来了,咱就 ...

  7. margin-bottom:-1px无效的问题

    在实现tab的时候,margin-bottom:-1px无效的问题 active的tab项,要指定他的border-top, 如: border-top: 1px solid #fff; border ...

  8. ETSI GS MEC 013,UE 位置 API

    目录 文章目录 目录 版本 功能理解 Relation with OMA APIs Relation with OMA API for Zonal Presence Relation with OMA ...

  9. java学习之旅(day.11)

    static详解 static若在类中使用,就是修饰成员变量 static若在方法中使用,就是成员方法? static加在方法上叫静态方法,加在属性上叫做静态属性 package com.zhang. ...

  10. 怀念中的java

    学了这门语言后一直没能做成项目,倒是安装环境,用记事本编辑的话,除了js最好做的就是java了. 以前学java的时候是一帮很有朝气的同学,在一个培训班,每天苦哈哈.从c开始学的语言,学完基础部分转入 ...