播客 RSS 提交给 Apple Podcasts 被拒,最常缺的是什么?
目录不看节目好不好听,只看 XML 里那几个必填标签在不在、格式对不对。
最常见的四类原因:一是 XML 根节点上少了 xmlns:itunes 命名空间声明,导致所有 itunes: 开头的标签都不被识别;二是频道的必填标签有缺失,标题、链接、简介、语言之外,还要有 itunes:author、itunes:owner(含名称与邮箱)、itunes:image、itunes:category、itunes:explicit;三是单集的 enclosure 缺少 url、length、type 三个属性中的任意一个;四是 pubDate 不符合 RFC 2822 格式。
还有两个容易被忽略的点:封面图必须是正方形、边长在 1400 到 3000 像素之间、文件建议小于 512KB;以及 guid 必须全局唯一且永不更改——如果两集用了同一个 guid,其中一集会在目录里被隐藏;如果发布后又改了 guid,目录会把它当成一集全新节目重新收录。
播客的分发模型和网站不一样:平台的服务器不会来抓你的页面,而是按你提交的那个 RSS 地址定期来读 XML,读到什么就显示什么。所以订阅源本身既是内容清单,也是技术接口。
提交被拒时,平台给出的提示往往很简略,只说「无法解析」或「缺少必要信息」。把必填项逐条对照一遍,比反复提交试错快得多。
1频道级必填标签
这些标签写在 channel 里,缺任何一个都可能被拒。注意 itunes 开头的标签依赖命名空间声明,声明写错等于全部缺失。
| 标签 | 内容 | 常见错法 |
|---|---|---|
| title | 节目名称 | 写成了单集标题 |
| link | 节目主页地址 | 填成订阅源地址,或不是完整 https 地址 |
| description | 节目简介 | 留空,或塞进了 HTML 标签 |
| language | 语言代码 | 写成「中文」而不是 zh-cn 这类代码 |
| itunes:author | 作者或主播名 | 与 owner 名称不一致,但仍可被接受 |
| itunes:owner | 含名称与邮箱两段 | 只写了名称,漏掉邮箱 |
| itunes:image | 封面图地址,属性 href | 地址不可公开访问,或不是正方形 |
| itunes:category | 分类,属性 text | 分类名不在平台允许的列表内 |
| itunes:explicit | 成人内容标记,取值 yes 或 no | 漏写,导致审核时无法判断 |
命名空间声明必须完整且大小写一致:`xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"`。这个地址看起来像网页,但它是标识符,不要改写成 https,也不要省略。
2单集级必填标签
每个 item 都要独立满足这些条件。有一集不合格,整份订阅源通常都会被判为无效。
| 标签 | 要点 | 出错后果 |
|---|---|---|
| title | 单集标题 | 目录里显示为无标题 |
| description | 单集简介 | 详情页空白,无法检索 |
| pubDate | RFC 2822 格式 | 排序错乱,新集可能排在旧集后面 |
| enclosure | 必须同时有 url、length、type | 直接导致整集无法播放 |
| guid | 全局唯一且永不更改 | 重复则某集被隐藏,改动则被判为新集 |
| itunes:duration | 时长,建议给 | 进度条信息缺失,影响收听体验 |
| itunes:episodeType | 取值 full、trailer 或 bonus | 预告与正片无法区分 |
`enclosure` 的 `length` 是音频文件的字节数,不是时长、也不是兆字节数。填错不会导致提交被拒,但会让客户端无法预估缓冲,部分播放器会因此判为异常。
3日期与实体的格式要求
这两个地方出错的概率很高,因为肉眼看起来都「没问题」,只有解析器才会报错。
- 日期必须是 RFC 2822
- 形如
Wed, 6 Jul 2014 13:00:00 -0700:英文星期与月份缩写、两位数的日、24 小时制、末尾带时区偏移 - 不能用 ISO 日期
2026-10-08T09:00:00是 ISO 8601,不是 RFC 2822,会被部分解析器拒绝- 实体只允许五个
&、<、>、"、'是安全可用的- 禁用网页排版实体
’、“、 这类来自 HTML 的命名实体,在部分解析器里会直接报错- 中文内容不用做转义
- 中文本身可以直接写在 XML 里,只要文件声明了 UTF-8 编码即可
4提交前的自查顺序
按这个顺序过一遍,能覆盖绝大多数被拒原因。
- 确认命名空间:根节点上有
xmlns:itunes,拼写与大小写完全一致。 - 补齐频道必填:九个频道级标签逐个核对,重点是 owner 的邮箱与封面的 href。
- 检查每一集的 enclosure:三个属性齐不齐,length 是字节数。
- 核对日期格式:全部
pubDate都符合 RFC 2822,且时间带时区偏移。 - 检查 guid 唯一性:把所有 guid 列出来比对,不能有重复。
- 核对封面:正方形,边长 1400 到 3000 像素,可公开访问的 https 地址。
- 确认音频地址可访问:直接点开链接,确认返回的是音频文件本身而不是一个网页。
- 最后整体校验一遍:把 XML 贴进校验工具,看有无未闭合标签、非法实体与字段数异常。
顺着这个问题往下用
全部工具总览 →相关疑问
订阅源地址可以中途更换吗?
技术上可以,但代价很大。目录是按订阅源地址收录节目的,换地址通常需要在各平台做一次迁移,订阅关系也可能需要重新建立。稳妥的默认做法是一开始就用自己域名下的固定地址,再通过重定向指向实际文件,这样将来换服务器时订阅方不受影响。
封面图到底要多大?
按官方要求是正方形、边长 1400 到 3000 像素,JPEG 或 PNG、RGB 色彩,文件建议控制在 512KB 以内。取 1400 到 3000 这个区间,是因为各客户端会在不同尺寸下使用它:列表页用小图,详情页用大图,尺寸不够放大就会糊。
为什么改了某一集的标题,听众那边没变?
因为客户端是按 guid 判断「这是不是同一集」的。只改标题不改 guid,客户端会把它当同一集并更新元数据,但缓存刷新需要时间;如果连 guid 一起改了,客户端就认为出现了一集全新的内容,旧的那集会一直留在历史里。
XML 里可以直接写中文吗?
可以,前提是文件本身以 UTF-8 保存并在 XML 声明里写明编码。真正要注意的是在文案里别混入原样输出的网页实体(例如从编辑器复制来的 ),以及 & 符号必须写成 &,否则 XML 解析会中断。
继续看:相关问题与资料
全部问题解答 →内容说明:本页针对具体使用问题作答,方法步骤与数值由本站自行整理与复算,事实性内容以对应官方规范与文档为准。内容最后核对日期:2026-10-08。若发现错误,欢迎通过页脚反馈入口告知。
速查在线工具箱