Nuri Akman @ 05-06-2009 11:05:
> Ayrıca, gönderilen dosyalar çalıştırıldığında benim için risk 
> oluşturabilecek içerik de barındırabilir (örnek: .php dosyası 

bunu bertaraf etmek için kolay yöntemi söyleyeyim, bir tane .htaccess 
dosyası atın o klasöre, içine de şunları koyun;

RewriteEngine on
Options +FollowSymlinks
RewriteBase /dosyalar/
RewriteRule ^([^/.]+)   /downloader.php?file=$1 [NC,L]

downloader.php'nin içine de şöyle bir betik koyabilirsin;

<?php
// downloader.php
$PATH = "/var/www/dosyalar/";
$dosya = PATH.$_GET["file"];
if (file_exists($dosya)) {
        $veri = fopen($dosya, "rb");
        $tip = filetype($dosya);
        $boyut = filesize($dosya);
        header("Content-Type: $tip");
        header("Content-Length: $boyut");
        header("Content-Disposition: attachment; filename=".$_GET["file"]);
        fpassthru($veri);
        fclose($veri);
}  else {
        echo "Böyle bir dosya bulamıyorum.";
}
?>

htaccess dosyası tüm dosya isimlerini doğrudan bu scripte yönlendireceği 
için gönül rahatlığı ile dosyaları çekebilirler, artı downloader.php 
dosyalarla aynı klasörde olmak zorunda da değil, o yüzden web serverın 
erişimi olmayan bir yere de koyabilirsin dosyaları.

-- 
Omer Barlas
[email protected]
_______________________________________________
Linux-programlama mailing list
[email protected]
http://liste.linux.org.tr/mailman/listinfo/linux-programlama

Cevap