数字海洋主机不允许读取文件使用simplexml_load_file


Digital Ocean hosting not allowing to read file using simplexml_load_file

我试图在使用PHP 5.4的数字海洋主机上使用以下代码阅读RSS提要:

<?php
libxml_use_internal_errors(true);
 $rss = simplexml_load_file('http://www.filmfare.com/feeds/feeds-news.xml');
        echo 'RSS '.$rss;
foreach (libxml_get_errors() as $error) {
        // handle errors here
var_dump($error);
    }
libxml_clear_errors();
?>

代码只是返回

RSS object(LibXMLError)#2 (6) { ["level"]=> int(1) ["code"]=> int(1549) ["column"]=> int(0) ["message"]=> string(78) "failed to load external entity "http://www.filmfare.com/feeds/feeds-news.xml" " ["file"]=> string(0) "" ["line"]=> int(0) } bool(false)

相同的代码,当我运行在一个Go Daddy主机与PHP 5.3,是返回完美的结果。

我已经检查过了,以下设置在两个主机的php.ini中是相同的

allow_url_fopen=On
allow_url_include = Off

然后我也尝试了下面的CURL代码片段,

<?php
$source='http://www.filmfare.com/feeds/feeds-news.xml';
$rcUrlHandle = curl_init($source);
curl_setopt($rcUrlHandle,CURLOPT_RETURNTRANSFER,true);
$sData = curl_exec($rcUrlHandle);
if(curl_errno($rcUrlHandle))
{
   echo 1;
    print_r(curl_getinfo($rcUrlHandle));
    curl_close($rcUrlHandle);
}
else
{
    echo 2 ;
    print_r($sData);
    curl_close($rcUrlHandle);
}
?>

Digital Ocean仍然没有返回任何结果,而Go Daddy返回的结果非常好。任何想法?

allow_url_fopen     On  On
allow_url_include   Off Off

发现DigitalOcean IP未被终端列入白名单。和他们一起启动了程序,几个小时后就能完成。谢谢所有人。