İçeriğe geç

PHP ile Güvenli Dosya Yükleme: Resim ve PDF Upload Rehberi

03.06.2024 3 okunma

Dosya Yükleme Güvenliği Neden Önemli?

Kötü yazılmış dosya yükleme kodu, saldırganların sunucuya zararlı PHP dosyası yüklemesine ve çalıştırmasına izin verebilir. Bu, sunucunun tamamen ele geçirilmesine yol açabilir.

Güvenli Upload Kodu

$izinliMime = ["image/jpeg","image/png","image/webp","application/pdf"];
$maxBoyut   = 2 * 1024 * 1024; // 2MB

$finfo    = new finfo(FILEINFO_MIME_TYPE);
$mimeType = $finfo->file($_FILES["dosya"]["tmp_name"]);

if (!in_array($mimeType, $izinliMime, true)) {
    die("Geçersiz dosya türü");
}
if ($_FILES["dosya"]["size"] > $maxBoyut) {
    die("Dosya çok büyük");
}

$uzanti    = pathinfo($_FILES["dosya"]["name"], PATHINFO_EXTENSION);
$yeniIsim  = bin2hex(random_bytes(16)) . "." . strtolower($uzanti);
move_uploaded_file($_FILES["dosya"]["tmp_name"], "uploads/" . $yeniIsim);

Kritik Güvenlik Kuralları

  • Asla orijinal dosya adını kullanmayın
  • Upload klasörünü web dışında tutun
  • PHP uzantılı dosyaları kesinlikle reddedin
  • .htaccess ile upload klasöründe PHP çalışmasını engelleyin
php dosya yükleme php upload güvenlik php resim yükleme php file upload php mime type kontrolü
İLERİ DÜZEY PHP ve MySQL YAZILIM hakkında bilgi almak ister misiniz?

Birebir özel yüz yüze eğitim yada uzaktan eğitim, esnek ders saatleri ile Pendik Kurtköy'de.