Ben sitelerin bir azınlık başlıkları almak için curl kullanırken sorun yaşıyorum.
Bazı örnekler digg.com ve microsoft.com bulunmaktadır.
function get_headers_curl($url, $port)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_NOBODY, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_PORT, $port);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
$r = curl_exec($ch);
$r = split("\n", $r);
return $r;
}
Ben şu anda kullanıyorum fonksiyon ve seçenekleri olan ve kullanım kolaylığı için çalışan küçük bir test komut dosyası var @ isitup.org/test.php?d=example.com. Sadece tepkinin başlıkları verir ve örneğin sitelerinin bir eksikliği ile birlikte.
Sorun bu siteler isteğini görmezden görünüyor ve hiçbir yanıt olsun. Ben diffrent seçenekleri ile etrafında bir oyun yaşadım ama bir cevap almak için görünmüyor olabilir.
Kaçırdığım bir şey var mı? Ya da kıvırmak kullanarak bu tür sitelere erişmek için possiable sadece değil mi?
Selamlar,
Sam
Edit:
dnm.php şöyledir:
<?php
$domain = preg_replace("/[^A-Za-z0-9-\/\.\:]/", "", trim($_GET["d"]));
$agent = "Mozilla/5.0 (X11; U; Linux i686; pl-PL; rv:1.9.0.2) Gecko/20121223 Ubuntu/9.25 (jaunty) Firefox/3.8";
function get_headers_curl($url, $port)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
// curl_setopt($ch, CURLOPT_HEADER, true);
// curl_setopt($ch, CURLOPT_NOBODY, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_PORT, $port);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_USERAGENT, $agent);
$r = curl_exec($ch);
$r = split("\n", $r);
return $r;
}
$headers = get_headers_curl("http://".$domain, 80);
print("<pre>".print_r($headers,true)."</pre>");
?>
Ancak yeni bir kullanıcı aracısı hala bu sitelerden bir yanıt almaz ...
Güncelleme: Woops benim hata görülen, fonksiyon içine ajan kaydırılır ve yea çalışıyor! Teşekkür: P