Bunu yapmanın birkaç yolu vardır
- Kullanım RedirectMatch yukarıda belirtilen
- Index.php tüm aramaları yeniden yazmak için mod_rewrite kullanımı
- Belge kök dışında klasörü taşımak ve komut dosyası çalışma sonucunda klasörü göstermek
Seçenekler, ikinci ve üçüncü klasör içeriğini listelemek için bir komut dosyası yazmak için gerektirir. Bu documentation of PHP bulabileceğiniz oldukça basit bir script var
<?php
$d = dir("/etc/php5");
echo "Handle: " . $d->handle . "\n";
echo "Path: " . $d->path . "\n";
while (false !== ($entry = $d->read())) {
echo $entry."\n";
}
$d->close();
?>
Üçüncü seçenek web sunucusunda az ayrıcalıkları gerektirir. Bu gibi çalışır:
- Kişisel web sitesi sunucusu klasör / home / sen / public_html bulunmaktadır. / Home / sen / yüklenenler klasörünü koyun
- Folde içeriğini görmek isteyen istemci sayfa www.yourdomain.com/folder.php?folder=xxx girer
- You map PHP variable's "folder" value (xxx) to folder name
- Sen XX gibi değildir .. /. Sağlamak zorundayız. /.. / Etc, bu vs klasör içeriğini listeler. Kullanımı haritalama tablosu (1 => yourfolder1 vb) veya her şeyi emin Ya yüklenenler klasörünün içinde yer alır.
- En sonunda alt klasörlere bağlantıları (www.yourdomain.com/folder.php?folder=yyy vb) sağlayan klasörü girdilerini listelemek
- İzlemek :)
Üçüncü seçenek (mod rewrite) temelde aynıdır, ancak klasör adı www.yourdomain.com/folder.php?folder = için www.yourdomain.com / yüklenenler / xxx dönüştürmek için mod rewrite modülü (yeniden yazma kuralı ile verilir xxx)
Özetle:
İlk seçenek (yourdomain.com/403.php gibi) bazı dosyasına onları yönlendirerek dosya adlarını indirme izin vermez. Bu liste görüntülemek için web sunucusu üzerine dayanır ve ona geri kalanını ele sağlar.
İkinci ve üçüncü yöntemi (kombine olabilir OFC) kendi dizin listesini oluşturur. Bazı düzen içinde uygulanacak istiyorsanız, bu tek seçenektir. Önerilen yol belge kök dışında klasörü yerleştirmek, böylece kullanıcıların komut (bunlar dışında belge kök olarak web sunucusu için, bu tür dosyalar olmayacak) başarısız olsa bile herhangi bir dosya indirmek mümkün olmayacaktır. Eğer kullanıcı sunucu üzerinde herhangi bir klasörü (bu tehlikeli) görüntülemek için izin olmadığından emin olmak gerekir.