无法加载带有命名空间

时间:2016-04-07 00:45:19

标签: php xml apache rss

我在RHEL上运行Apache 2.4并具有以下XML -

<?xml version="1.0" encoding="utf-8"?>
<rss>
<channel>
<title>This is a test</title>
<link>http://example.com/</link>
<description>This is a test</description>
<language>en-us</language>
<lastBuildDate>Wed, 06 Apr 2016 13:37:53 -0400</lastBuildDate>
<docs>http://blogs.law.harvard.edu/tech/rss</docs>
<generator>Test</generator>
</channel>
</rss>

这在浏览器中按预期加载就好了。现在,如果将其更改为 -

 <?xml version="1.0" encoding="utf-8"?>
    <rss version="2.0" xmlns:media="http://search.yahoo.com/mrss/">
    <channel>
    <title>This is a test</title>
    <link>http://example.com/</link>
    <description>This is a test</description>
    <language>en-us</language>
    <lastBuildDate>Wed, 06 Apr 2016 13:37:53 -0400</lastBuildDate>
    <docs>http://blogs.law.harvard.edu/tech/rss</docs>
    <generator>Test</generator>
    </channel>
    </rss>

我得到“连接已重置”。 apache访问或错误日志中没有任何内容可以指向可能导致无法加载的内容。此外,如果我删除版本=“2.0”xmlns:xhtml =“http://search.yahoo.com/mrss/”并添加像blah =“blah”之类的东西,它的工作原理。版本或名称空间声明导致XML无法加载。任何帮助解决这个问题都将受到高度赞赏。

根据评论提供更多细节

  1. XML文件是静态的,不是生成的,而是PHP或任何其他代码
  2. 如果我将扩展名更改为.txt或.html,则可以正常使用。
  3. 如果我有版本或命名空间属性(一个或另一个),则文件不会呈现。因此,这两项都失败了 - <rss version="2.0"> <rss xmlns:media="http://search.yahoo.com/mrss/">

  4. 如果我将节点<rss>重命名为<rss1>,则可以正常工作。

  5. 测试了所有浏览器,也测试了相同的结果
  6. 此服务器上安装了PHP。任何扩展都可以导致这种情况吗?

1 个答案:

答案 0 :(得分:0)

这发生在限制访问VPN上,该VPN限制了RSS和MP4流量。