Monday, May 30, 2011

Keamanan : Download File dengan PHP

Mungkin banyak orang yang memiliki cara tersendiri dalam melakukan dowload file dengan cara yang aman. Namun saya juga punya caranya cukup sederhana dan mungkin sama dengan cara anda. Namun yang terpenting adalah file yang akan kita download kita letakan dalam folder yang nggak bisa di buka melalui web server artinya tidak berada di dalam folder DocumentRoot. Sehingga mencegah orang mendownload tanpa script yang kita buat dan juga mencegah search engine melakukan pengindexan.

Caranya cukup mudah buat script sebagai berikut.
$ref=$_SERVER["HTTP_REFERER"];
$ref1 = explode(”/”, $ref);
if ($ref1['2']==”www.webku-sendiri.com”) {

if ($_GET[f]){
$f=$_GET[f];
$m=”/home/cakep/data/$f”;
if (is_readable($m)) {
//clearstatcache();
//header(”Cache-Control: no-store, no-cache”);
header(”Content-Type: application/force-download”);
header(”Content-Transfer-Encoding: binary”);
header(”Content-Length:”. filesize($m));
header(”Content-Disposition: attachment; filename=\”$m\”");
readfile(”$m”);
}else {
echo “Gagal”;
}
}
}else {
header(”Location: login.php?”);
exit;
}

ob_end_flush();

Nah simpan file tersebut dan kasih nama misal download.php. Untuk mendownloadnya cukup panggil alamat tersebut dengan perintah http://www.webku-sendiri.com/download.php?f=namafile.doc

Sesuaikan dengan nama domain dan file anda. Untuk lebih aman lagi sebenarnya anda bisa menambahkan filter jenis file yang anda ijinkan (.jpg,.gif,.doc,docx,.xls,.xlsx, dan lain-lain).

Oke selamat mencoba untuk mengamankan file anda dengan script sederhana tersebut.

No comments:

Post a Comment

Terima kasih atas komentar yang anda sampaikan , sehingga dapat menambah wawasan saya sebagai penulis dan membuat blog ini semakin berguna banyak orang