2

我有一个 PHP 脚本需要处理同一个站点的 RSS 提要。具体来说,我在主页上显示来自 WordPress RSS 提要的最新博客。在我们的登台服务器上它运行良好,但在我们的现场(这是一个完全不同的,但 LAMP 的)托管环境中它不工作。

我可以正常运行file_get_contentscurl在远程 url 上运行,但是当我尝试检索我们自己的 RSS 提要时,我返回了一个 404 not found 页面。另一个奇怪的是,如果我尝试file_get_contents(http://domain.com/test.txt)它会以 404 失败,但如果我这样做,file_get_contents(http://www.domain.com/test.txt)我会得到测试文本文件的内容。这一切都假设我从 domain.com(不是 www.domain.com)运行脚本

我在这里设置了一个示例:http: //bkwld.com/test.php

4

5 回答 5

2

好的,我仍然不知道它为什么要这样做,但我将通过 feedburner 运行我的提要然后解析它的 RSS 提要来解决它。因为它在远程域上,所以它在我的测试中有效。不理想,但 w/e。

于 2009-06-03T01:18:39.830 回答
2

我刚刚遇到了类似的问题。DNS是问题所在,它没有解析您的域名。您应该在脚本中使用 IP 而不是域。

您可以在 cmd 中 ping 您的域并使用该 IP。

于 2009-10-17T15:05:39.733 回答
1

我有一个非常相似的问题 - 您可以尝试使用 127.0.0.1 而不是您自己的域名(假设您的 apache 设置不会阻止您这样做)。我相信与域解析有关,api的怪癖。

于 2009-06-02T15:27:33.083 回答
0

确实,奇怪。你将如何解析文件?您可以直接将其加载到 SimpleXML 中;

$xml = simplexml_load_file("http://domain.com/blog/feed/index.php");
/* Use Simple XML to parse the RSS feed */

我意识到这种方法不能解决您的问题,您只能使用另一种方法 - 但也许对您来说已经足够了。

于 2009-06-02T20:38:47.650 回答
0

如果 domain.com/test.txt 返回 404 并且 www.domain.com/test.txt 成功,则主机 DNS 可能具有不同配置的托管域。无论如何,我确定您已经尝试使用“www”检索 RSS 提要,但您是否尝试使用相对路径?例如:file_get_contents('../../feed/')

于 2011-10-26T11:31:37.447 回答