链接到RSS/Atom提要,相对,在Firefox中不起作用

Adr*_*ith 8 html rss firefox feed atom-feed

我有一个奇怪的问题.我生成了一个HTML页面,托管在http://www.x.com/stuff上提供,其中包含

<head>
  <link type="application/atom+xml" rel="alternate" href="/stuff/feed"/>
  ..
</head>
Run Code Online (Sandbox Code Playgroud)

结果是:

  • 在IE7中一切正常 - 您可以在浏览器中单击提要图标并显示提要
  • 在Firefox中,查看源代码,单击链接,然后查看源/stuff/feed的源,以便按预期工作
  • 在Firefox中,查看页面(不是源代码),然后单击地址栏中的feed图标,我收到一条错误,指出它无法检索到URL feed://http//www.x.com/stuff/feed

所以问题是,它会附加feed://到URL的前面,然后取出:后面的冒号http.我知道这feed:是HTTP,所以也许添加它不是一个大问题.

但无论如何,事实是,Firefox生成的我的<link>标签不起作用.

我曾考虑把网址是绝对的,但我还没有发现任何证据表明,这些网址必须是绝对的,也不是我能理解为什么会是这样.由于各种原因,我的代码生成绝对URL会很不方便.如有必要,我能做到这一点,但我希望看到的证据(如规格,或Mozilla错误报告)认为有必要做我的代码之前凌乱

你怎么看?有谁知道URL应该是绝对的任何证据?或者我做错了什么?这似乎是一个简单/明显的标签,没有什么可以出错,但我无法让它工作.

Jer*_*son 1

我有同样的问题。这是由我的网络流量正在运行的代理服务器引起的。Firefox 将“http://server.tld/feed-url”更改为“feed://http://server.tld/feed-url”。由于我的所有 http 流量所经过的 Web 代理无法识别“feed://”协议,因此它会拒绝我的请求,因为该请求无效。

到目前为止,我发现的唯一解决方法是在 Firefox 中手动配置代理设置。现在您的系统可能会自动配置它们。如果您知道代理信息,则可以手动配置它。仅对 http/https/ftp 这样做才允许我访问 feed,因为 Firefox 会直接处理 feed:// URL(最终会像我想要的那样重定向到 http://)。

要直接配置代理设置,您需要转到编辑 -> 首选项 -> 高级 -> 设置(“连接”旁边)。使用手动设置。您必须确定您的系统已在使用的代理设置。

请注意,缺少的冒号(Piet 提到的)并不是您网站上的错误。这是 Firefox 订阅正在进行的转换。另请注意,这并不是 Julien 所建议的由相对 URL 引起的问题。Firefox 将其转换为绝对 URL,但随后删除了 http:// 协议前缀中的冒号,以便可以将其附加到“feed://”(更改协议并提供原始绝对 URL 作为“URL”)对于新的“feed”协议)。