• 16-05-2017, 21:18:59
    #1
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Merhaba arkadaşlar.

    ftp.asm.cz sunucusunun FTP karşılama mesajını çekmek istiyorum. Bazı nedenlerden dolayı sadece HTTP protokolünü kullanmam gerekiyor. Bunun için http://ftp.asm.cz:21 adresine cURL ile şöyle bir bağlantı yapıyorum:

    <?php
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL,             'http://ftp.asm.cz:21');
    curl_setopt($ch, CURLOPT_RETURNTRANSFER,  TRUE);
    curl_setopt($ch, CURLOPT_HEADER,          TRUE);
    curl_setopt($ch, CURLOPT_TIMEOUT,         5);
    $sonuc = curl_exec($ch);
    curl_close($ch);
    echo "<pre>".$sonuc;
    ?>
    Fakat $sonuc değişkeni boş dönüyor, hiçbir sonuç vermiyor. Aynı cURL bağlantısını bu kez "CURLOPT_RETURNTRANSFER"'i FALSE olarak ayarlayıp sonucu direk ekrana yazdırdığımda çıktıyı alabiliyorum. Çıktı şöyle dönüyor:

    Alıntı
    220 ProFTPD 1.3.4a Server (ftp.asm.cz) [::ffff:212.24.156.252]
    500 GET not understood
    500 HOST: not understood
    550 */*: Forbidden command argument
    500 Invalid command: try being more creative
    Benim istediğim de tam olarak bu çıktıyı almak. cURL yerine file_get_contents kullanıp, sonucu değişkene atayınca sorunsuz bir şekilde çıktıyı yazdırabiliyorum, ancak cURL'da bir türlü olmuyor. Bu sorunu nasıl çözebilirim?
  • 17-05-2017, 13:38:36
    #2
    Daha önce böyle bir sorunla karşılaşmadım o nedenle nihai çözüm sunamıyorum fakat yinede çözüm mahiyetinde ob_start() ve ob_get_clean() ile çıktıyı alıp değişkene atamanızı önerebilirim.