标准 rss link 标签必须置于 中,格式为 ,且需确保服务端返回匹配的 content-type 响应头。

RSS 订阅链接不是靠 JavaScript 或 CSS 添加的,而是通过 <link> 标签在 HTML 的 里声明——浏览器和阅读器靠这个自动发现 feed。
怎么写标准的 RSS link 标签
必须放在 里,且类型、关系、地址三者缺一不可。常见错误是漏掉 type 或用错 MIME 类型。
-
rel必须是"alternate",不能写成"rss"或"feed" -
type要严格用"application/rss+xml"(RSS)或"application/atom+xml"(Atom),"text/xml"不被主流阅读器识别 -
href必须是绝对路径或根相对路径(如/feed.xml),相对路径(如feed.xml)在子页面会 404 - 建议加
title属性,值为站点名或 “RSS” 字样,部分阅读器会显示它
正确示例:
<link rel="alternate" type="application/rss+xml" href="/feed.xml" title="我的博客 RSS">
为什么加了 link 却没被识别
常见原因不是代码写错,而是服务端或路径问题。浏览器不会报错,只会静默忽略。
立即学习“前端免费学习笔记(深入)”;
- 服务器没返回
Content-Type: application/rss+xml响应头(Nginx/Apache 需单独配置,否则可能返回text/plain) -
href指向的地址返回 404 或重定向到 HTML 页面(比如 GitHub Pages 默认不托管 XML 文件,需确认文件已部署) - feed 文件本身格式非法(XML 标签未闭合、编码非 UTF-8、缺少必需字段如
<channel><title></title></channel>) - 用了 HTTPS 站点但 feed 地址是 HTTP,现代浏览器会阻止混合内容
要不要加多个 feed 链接(RSS + Atom + JSON Feed)
可以加,但没必要堆砌。阅读器只认第一个匹配的 application/rss+xml 或 application/atom+xml。
- 如果同时提供 RSS 和 Atom,建议只留一个,优先选
application/atom+xml(更现代、扩展性好) - JSON Feed(
application/json)目前只有少数阅读器支持,加了也基本无效 - 多个
<link>不影响性能,但会增加 HTML 体积,且容易因顺序错乱导致误读
Feed 地址该放哪:/feed.xml 还是 /rss/
路径本身无规范约束,但影响可维护性和兼容性。
-
/feed.xml最通用,WordPress、Hugo、Jekyll 默认都用这个,阅读器识别率最高 -
/rss/或/atom.xml也可以,但需确保服务器能正确响应(比如/rss/要返回 XML 内容,不能跳转到 HTML 页面) - 避免用带查询参数的路径(如
/feed?format=rss),部分聚合器不支持解析 - 静态站点建议用 .xml 后缀,便于 CDN 和服务器自动设置
Content-Type
真正容易被忽略的是:feed 文件必须能被公开 GET 请求直接获取,且响应头里的 Content-Type 和 HTML 中写的 type 必须完全一致——差一个字母,阅读器就当不存在。











