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 omer_at_barlas.com.tr _______________________________________________ Linux-programlama mailing list Linux-programlama_at_liste.linux.org.tr http://liste.linux.org.tr/mailman/listinfo/linux-programlamaReceived on Fri 05 Jun 2009 - 11:35:13 EEST