我使用以下代码来提取Facebook Feed:
function disguise_curl($url)
{
$ch = curl_init($url);
curl_setopt( $ch, CURLOPT_POST, false );
curl_setopt( $ch, CURLOPT_FOLLOWLOCATION, true );
curl_setopt( $ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7.12) Gecko/20050915 Firefox/1.0.7" );
curl_setopt( $ch, CURLOPT_HEADER, false );
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
$data = curl_exec($ch);
curl_close($ch);
return $data;
}
$url = "http://www.facebook.com/feeds/page.php?id=271916869567341&format=json";
$text = disguise_curl($url);
echo '<pre>';print_r($text);echo '</pre>';
这在我们的开发服务器(http://divevic.v3.website.2014.360southclients.com/curltest.php)上工作正常,但在实时服务器上,它无效(http://www.divevictoria.com.au/curltest.php)。
我一直试图让服务器人员研究这个,并解决这个问题,但他们一直告诉我这是代码问题,而不是服务器问题。他们正在攫取我的大脑。据我所知,代码没有任何问题。
也许这里有人可以帮我解决一下这个问题吗?或者也许告诉我该告诉服务器人员打开/关闭什么?
实时服务器php信息说明了这个关于cURL:
CUR
L support enabled
cURL Information 7.36.0
Age 3
Features
AsynchDNS Yes
Debug No
GSS-Negotiate Yes
IDN Yes
IPv6 Yes
Largefile Yes
NTLM Yes
SPNEGO No
SSL Yes
SSPI No
krb4 No
libz Yes
CharConv No
Protocols dict, file, ftp, ftps, gopher, http, https, imap, imaps, ldap, ldaps, pop3, pop3s, rtsp, scp, sftp, smtp, smtps, telnet, tftp
Host x86_64-redhat-linux-gnu
SSL Version OpenSSL/1.0.1e
ZLib Version 1.2.3
libSSH Version libssh2/1.4.3
关闭的东西应该打开,反之亦然?任何帮助将不胜感激!