2016-12-07 17 views
1

私はPHPのCURLでhttp://ars-sps.ru/all-contactのページを読み込みますが、結果のCURLはウェブページhttp://legaljapan.jpに戻ります。代わりに他のウェブサイトを取得するには

どのようにすることができますか?

PHPコード:

$headers = array(
     'Expect:', 
     'Accept: text/html,application/xhtml+xml,application/xml;q=0.9', 
     'Accept-Language: ru,en-us;q=0.7,en;q=0.7', 
     'Accept-Charset: utf-8,windows-1251;q=0.7,*;q=0.5', 
    ); 

    $ch = curl_init(); 
    curl_setopt($ch, CURLOPT_URL, 'http://ars-sps.ru/all-contact'); 
    curl_setopt($ch, CURLOPT_PORT, 80); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
    curl_setopt($ch, CURLOPT_BINARYTRANSFER, 1); 
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10); 
    curl_setopt($ch, CURLOPT_TIMEOUT, 60); 
    curl_setopt($ch, CURLOPT_USERAGENT,'Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.1) Gecko/20090716 Ubuntu/9.04 (jaunty) Shiretoko/3.5.1'); 
    curl_setopt($ch, CURLOPT_VERBOSE, 2); 
    curl_setopt($ch, CURLOPT_HEADER, 0); 
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); 
    curl_setopt($ch, CURLOPT_MAXREDIRS, 7); 
    curl_setopt($ch, CURLOPT_AUTOREFERER, 1); 
    curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); 
    curl_setopt($ch, CURLOPT_COOKIEFILE, 'curl_cookie.txt'); 
    curl_setopt($ch, CURLOPT_COOKIEJAR, 'curl_cookie.txt'); 

    echo $page = curl_exec($ch); 
+1

ブラウザでhttp://ars-sps.ru/all-contactを開くと、リダイレクトされます。 –

答えて

1

いけないし、 "CURLOPT_USERAGENT" のparamを使用しています。

+0

ありがとうございました。しかし、私はなぜそれが理解できないのですか? – user451555

+1

ここで私は、次のように "CURLOPT_USERAGENT" を入れて、あなたのコード ますcurl_setopt($ chの、CURLOPT_USERAGENT、「Mozillaの/ 5.0(X11で働いていた; U;のLinux i686の; EN-US; RV:1.9.1)Geckoの/ 20090622のUbuntu/9.04知床(知床)/ 3.5 '); USERAGENTに問題があるため、サーバーがリダイレクトしていると思います。 – webDev

+0

あなたのユーザーエージェントのparam内で "Linux x86_64"が一致するものに変更されました。 – webDev

関連する問題