За последние 24 часа нас посетили 56274 программиста и 1777 роботов. Сейчас ищут 989 программистов ...

curl и socks

Тема в разделе "Прочие вопросы по PHP", создана пользователем Green Bear, 16 авг 2008.

  1. Green Bear

    Green Bear Активный пользователь

    С нами с:
    25 мар 2007
    Сообщения:
    14
    Симпатии:
    0
    привет, никогда раньше не работал с курл, где приходилось использовать socks4/5.
    теперь возникла такая необходимость,
    короче мои действия такие:
    PHP:
    1. <?php
    2.         curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    3.     curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (X11; U; Linux i686; ru; rv:1.9.0.1) Gecko/2008070206 Firefox/3.0.1');
    4.     curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    5.     curl_setopt($ch, CURLOPT_TIMEOUT, 30);
    6.     curl_setopt($ch, CURLOPT_URL, $url);
    7.     curl_setopt($ch, CURLOPT_HEADER, 1);
    8.     if($proxy){
    9.         $pr = $proxy_list[array_rand($proxy_list)];
    10.         $pr = $pr['ip'].":".$pr['port'];
    11.         curl_setopt($ch, CURLOPT_PROXY, $pr);
    12.         switch($input['proxytype']){
    13.             case 's5':
    14.                 curl_setopt($ch, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5);
    15.                 break;
    16.             case 's4':
    17.                 curl_setopt($ch, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS4);
    18.                 break;
    19.         }
    20.        
    21.     }
    22.  
    $input['proxytype'] и s4 и s5, не работают с ними. если использовать обычные http прокси, то работает отлично.

    вот нужно решить проблему, почему не работает с соксами :( в сети по этому поводу молчек или гугле мой враг :(

    curl version:
    PHP:
    1.     [version_number] => 463360
    2.     [age] => 3
    3.     [features] => 1597
    4.     [ssl_version_number] => 0
    5.     [version] => 7.18.0
    6.     [host] => i486-pc-linux-gnu
    7.     [ssl_version] => OpenSSL/0.9.8g
    8.     [libz_version] => 1.2.3.3
    9.     [protocols] => Array
    10.         (
    11.             [0] => tftp
    12.             [1] => ftp
    13.             [2] => telnet
    14.             [3] => dict
    15.             [4] => ldap
    16.             [5] => ldaps
    17.             [6] => http
    18.             [7] => file
    19.             [8] => https
    20.             [9] => ftps
    21.         )
    22.  
    23. )
    24.