Uzak sunucudan PHP dizin listesi

3 Cevap php

Nasıl IP adresini bilmeden bir uzak sunucu dizin listesini okumak için opendir işlevini kullanabilirsiniz?

3 Cevap

HTTP kullanarak uzak sunucuya erişmek için çalışıyoruz varsayarsak, doğrudan bunu yapmak mümkün olmayacaktır. HTTP gerçekten erişim uzak sunucu web hizmeti gidiyor beri, bu dosyalar size sunulmaktadır nasıl denetler. Birçok web sunucuları durumunda, klasörün içeriği için "indeksler" açabilirsiniz. Bu tarayıcınıza HTML olarak görüntülenecek klasöründeki girdileri neden olur. Dizin yapısını geçebilmek için, size yol bilgilerini bulmak için bu HTML ayrıştırmak gerekir.

FTP kullanıyorsanız, sürüm 5.0 olarak opendir() için ftp://... URL iletebilirsiniz. Bu özelliği sunucu admin kapatılabilir unutmayın. Doğrudan bu özelliği kullanmak yapamıyorsanız, PHP için FTP functions kılavuzuna bakınız (dahil ftp_nlist() dosyaları listeleme için).

Yukarıdaki referanslar bir örnek:

<?php

// set up basic connection
$conn_id = ftp_connect($ftp_server);

// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// get contents of the current directory
$contents = ftp_nlist($conn_id, ".");

// output $contents
var_dump($contents);

?>

Zayıf cevaplar! Bu komut ile bunu yapabilirsiniz. Hiçbir FTP, hayır savaşıyorum. Bu, uzak bir klasördeki tüm dosya isimlerini geri verecektir. Eğer bir tarayıcı ile klasör açabilirsiniz, ayrıca php ile okuyabilirsiniz. Mutlu leeching ;)

function get_text($filename) {

    $fp_load = fopen("$filename", "rb");

    if ( $fp_load ) {

            while ( !feof($fp_load) ) {
                $content .= fgets($fp_load, 8192);
            }

            fclose($fp_load);

            return $content;

    }
}


$matches = array();

preg_match_all("/(a href\=\")([^\?\"]*)(\")/i", get_text('http://www.xxxxx.com/my/cool/remote/dir'), $matches);

foreach($matches[2] as $match) {
    echo $match . '<br>';
}

Eğer sunucu üzerinde php için yüklenen ftp uzantısı varsayarsak, kullanmak gerekir phps ftp functions