whitepages.com から情報を取得する関数があり、完全に機能しました。コードを新しいサーバーに移動しましたが、カールとホワイト ページのみで問題が発生しています。zillow.com などの curl を使用して他のサイトにもアクセスしますが、問題なく動作します。
使用しているコードは次のとおりです。
<?php
$ch3 = curl_init();
curl_setopt($ch3, CURLOPT_CONNECTTIMEOUT, 15);
curl_setopt($ch3, CURLOPT_TIMEOUT, 15);
curl_setopt($ch3, CURLOPT_URL, "http://www.whitepages.com/name/john-smith/md");
curl_setopt($ch3, CURLOPT_RETURNTRANSFER, 1);
$output2 = curl_exec($ch3);
curl_close($ch3);
?>
<?=$output2;?>
cURL、PHP、またはサーバー自体に問題があるかどうかはわかりません。PHP バージョン 5.3.17。古いサーバー:PHP バージョン 5.2.4。私たちが持っている他のすべてのサーバーで動作するようです。オンにする必要があるオプションがphpまたはcURLにあるかどうかわかりません。ありがとう。
編集: curl セクションの phpinfo は次のとおりです。
cURL support enabled
cURL Information 7.24.0
Age 3
Features
AsynchDNS No
Debug No
GSS-Negotiate No
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, smtp, smtps, telnet, tftp
Host x86_64-unknown-linux-gnu
SSL Version OpenSSL/1.0.0
ZLib Version 1.2.3
gatorhost の専用サーバーです。linux-RedHat-9.8.2 だと思います。そして、「ホストに接続できませんでした」とだけ表示されます
コードが正常に動作することを確認しました。(両方のホストからテストを実行しました)。ホスト自体に、ホワイトページへのアクセスをブロックしている何かがあります。cURL が有効になっているため、別のポート (つまり... 8080) を使用しようとしました。また、特定のブラウザー ヘッダーとユーザー エージェントを確立してみました (次の投稿から) Can servers block curl requests?
私たちが確立したものは何も違いを生むようには見えません....ファイアウォールの問題であるとも考えていますが、ここでローカルに確認しましたが、問題はありません. サーバー上でブロックされているとしか思えません。「リセラー」専用サーバー、php.ini へのアクセスなどがあります。