fsockopenで.de-ドメインの可用性をチェックすると、結果は常に出力されますが、cURLで約75%のクエリは失敗します。 curl_errnoはエラーコード56(CURLE_RECV_ERROR)を返します。 whois.crsnic.netで.com-domainをチェックしようとすると、毎回cURLが正常に動作します。 whois.denic.deだけが問題になります。ここでPHP - CURLを使ったDENIC whoisクエリがうまく動作しない
はコードです:
$domain = "google.de";
$whois_server = "whois.denic.de";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $whois_server.":43"); // Whois Server
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $domain."\r\n"); // Query
$whois = curl_exec ($ch);
echo "RESULT: ".$whois;
echo "<br/>";
echo curl_errno ($ch);
echo "<br/>";
ここfsockopenのクエリです:
fsockopen($whois_server,43, $errno, $error, 5);
は間違っている可能性がどのような誰も考えていますか?ありがとう!
DENICは、いくつかのアンチボットフィルタを確立しています。したがって、多くのリクエストを処理するには、APIを使用する必要があります。 –
'whois'クエリを実行するためにHTTPライブラリを使用しないでください。ポート43でTCPソケットを開くだけです。 –