链接到RSS / Atom提要,相对而言,在Firefox中不起作用
我有一个奇怪的问题。 我生成一个HTML页面,托管在http://www.x.com/stuff中包含
<head>
<link type="application/atom+xml" rel="alternate" href="/stuff/feed"/>
..
</head>
结果是:
/stuff/feed
并查看源的源,以便按预期工作 feed://http//www.x.com/stuff/feed
所以问题在于,它将feed://
附加到URL的前面,然后取出冒号:
http
后面。 我明白这个feed:
无论如何都是HTTP,所以也许添加这个并不是一个大问题。
但无论如何,事实是,Firefox生成的URL不能用于我的<link>
标记。
我曾考虑过将网址设为绝对网址,但我没有发现任何证据表明这些网址必须是绝对的,我也不能理解为什么会是这种情况。 由于各种原因,在我的代码中生成绝对URL会很不方便。 我可以在必要时做到这一点,但我希望看到证据(例如规范或Mozilla错误报告),以便在我的代码变得麻烦之前
你怎么看? 有谁知道任何证据,该网址应该是绝对的? 还是我在做其他事情? 这似乎是一个简单/明显的标签,没有什么可能出错,但我无法让它工作。
我有同样的问题。 IT是由我的网络流量正在工作的代理服务器引起的。 Firefox将“http://server.tld/feed-url”改为“feed://http//server.tld/feed-url”。 由于我的所有http流量都经历过的Web代理无法识别“feed://”协议,因此它会拒绝我的请求为无效。
目前唯一的解决方法是在Firefox中手动配置代理设置。 现在你可能会让系统自动配置它们。 如果您知道您的代理信息,则可以改为手动配置它。 这样做只对http / https / ftp允许我访问提要,因为Firefox然后直接处理feed:// URL(最终以它重定向到http://就像我想的那样)。
要直接配置您的代理设置,您需要转到编辑 - >首选项 - >高级 - >设置(“连接”旁边)。 使用手动设置。 您必须确定您的系统已经使用的代理设置。
请注意,遗漏的冒号(由Piet提到)不是您网站上的错误。 这是Firefox订阅正在进行的转换。 另外请注意,这不是Julien建议的相对URL导致的问题。 Firefox会将其转换为绝对URL,但会删除http://协议前缀中的冒号,以便将其附加到“feed://”(更改协议并提供原始绝对URL作为“URL”为新的“饲料”协议)。
你能提供一个链接到你的网站或特定的HTML页面看到这个直播吗? 因为SO上的这个问题的ATOM提要完全按照您尝试链接您的ATOM提要的方式公布:
<link rel="alternate" type="application/atom+xml" title="Feed for question 'Link to RSS/Atom feed, relative, doesn't work in Firefox'" href="/feeds/question/4438794">
这适用于我的Firefox/3.6.13
。
非工作基地网址包含拼写错误的事实是可疑的:如果有意外覆盖它,会发生这种情况。
您的网页是否包含不良的base
元素? 该base
元素(和RFC 1808)不支持在所有浏览器完全一样的,所以如果你有这样的事情在文档中(注意没有:
):
<base href="http//www.x.com/">
那么浏览器可能会不一致地使用它来解析相对引用,具体取决于元素的位置,呈现模式,错误回退行为或其他因素。
如果文档不包含base
元素,请检查您是否通过其他方式(如Content-Location HTTP标头)意外引入了不正确的基本URL。
上一篇: Link to RSS/Atom feed, relative, doesn't work in Firefox