RSS阅读器可在LocalHost上使用,但不能共享托管

时间:2019-07-28 00:42:04

标签: php rss shared-hosting

我有一个简单的PHP脚本,可从craigslist加载RSS提要。它已经运行了好几个月,然后在几天前突然停止了提取数据。我尝试在本地主机上运行脚本,它可以正常运行。我联系了托管网站的GoDaddy,但没有运气。我尝试了另一个托管服务HostGator,并且遇到了相同的问题,它无法检索数据。

是什么原因导致它突然停止在共享主机帐户上工作,但仍在我的LocalHost上工作?

这是简单的PHP脚本-

$rss = new DOMDocument();
$rss->load("Craigslist RSS Feed URL");
$feed = array();
foreach ($rss->getElementsByTagName('item') as $node) {
    $item = array (
        'title' => $node->getElementsByTagName('title')->item(0)->nodeValue,
        'desc' => $node->getElementsByTagName('description')->item(0)->nodeValue,
        'link' => $node->getElementsByTagName('link')->item(0)->nodeValue,
        'date' => $node->getElementsByTagName('date')->item(0)->nodeValue,
    );
    array_push($feed, $item);
}

var_dump($feed);

1 个答案:

答案 0 :(得分:0)

您的Php脚本使用DOMDocument,它需要php-xml扩展名。您是否在共享主机上安装了它?。

我不确定为什么您的代码可以在localhost上运行,但不能在共享主机上运行。 craiglist服务器可能会将您共享的主机IP视为可疑。

如果您的IP地址被阻止,则您可能需要在curl请求中添加用户代理标头。这将使您的请求看起来像来自网络浏览器。