За последние 24 часа нас посетили 35086 программистов и 1737 роботов. Сейчас ищут 763 программиста ...

CURL - ftp через proxy

Тема в разделе "PHP для новичков", создана пользователем Adamant, 16 окт 2008.

  1. Adamant

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

    С нами с:
    8 апр 2007
    Сообщения:
    234
    Симпатии:
    0
    Адрес:
    Казахстан г.Тараз
    Не получается самому разобраться с небольшой трабл:

    PHP:
    1.  
    2. <?php
    3. // файл для заливки на сервер
    4. $file = 'test.html';
    5.  
    6. $proxy = 'x.x.x.x:80';
    7.  
    8. $fp = fopen($file, 'r'); //открываем файл
    9.  
    10. /* искомый URL(ftp) */
    11. $url = 'ftp://user:pass@site.ru:21/htdocs/FileDownload/' . $file;
    12.  
    13. $ch = curl_init(); //инициализируем curl сессию
    14.  
    15. curl_setopt($ch, CURLOPT_PROXY, $proxy);
    16. curl_setopt($ch, CURLOPT_TIMEOUT, 30);
    17.  
    18. curl_setopt($ch, CURLOPT_URL, $url); // URL который должен быть получен
    19. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //непосредственно возвращаем трансфер
    20. curl_setopt($ch, CURLOPT_UPLOAD, 1); // подготавливаем файл к «выгрузке»
    21. curl_setopt($ch, CURLOPT_INFILE, $fp); // Файл, из которого приходит ввод трансфера
    22. curl_setopt($ch, CURLOPT_FTPASCII, 1); // режим ASCII для FTP
    23. curl_setopt($ch, CURLOPT_INFILESIZE, filesize($file)); //возвращаем трансфер вместо печати напрямую
    24. curl_exec($ch); // Выполняем curl сессию
    25.  
    26. // смотрим результат работы сессии
    27. echo "<pre>";
    28. echo "\n cURL error number:" .curl_errno($ch);  
    29. echo "\n cURL error:" . curl_error($ch);
    30.  
    31. curl_close($ch); // // Завершаем curl сессию
    32. ?>
    33.  
    Если не использовать прокси все OK. Но весь вопрос именно в заливке файлов через прокси.
    Погуглил но ничего по сабжу не нашел. Есть ли у кого конструктивные мысли?
    [​IMG]
     
  2. QQQ

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

    С нами с:
    21 ноя 2007
    Сообщения:
    538
    Симпатии:
    0
    что именно не так?
    курл ругается как-нить?

    скорее всего дело либо в проксе (дохлая, не поддерживает ftp), либо в хостере и его курле.. у меня как-то у одного хостера соксы не работали
     
  3. 123456879

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

    С нами с:
    17 ноя 2011
    Сообщения:
    3
    Симпатии:
    0
    попробуй использовать socks прокси