Sending e-mail attachments [PHP] Multiple Upload
Jul 20

tulisan ini secara g sengaja dapat hasil surfing di forum diskusiweb, wah perlu ta catet  dulu nih supaya g lupa, dan mungkin banyak diantara temen2 yang membutuhkan nantinya tinggal  copas aja :

script yang akan saya copas disini adalah script yang ditulis yang punyai id anghuda  contoh scriptnya :

0. Di-search pake keyword redirect download munculnya nomor 1 adalah ke tret ini, jadi recursive deh :P

Jadi, boleh dong meneruskan tret ini?

1. Cara pertama, gunakan .htaccess ini:

RewriteEngine On

RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !yourdomain\.com [NC]
RewriteCond %{HTTP_REFERER} !google\. [NC]
RewriteCond %{HTTP_REFERER} !search\?q=cache [NC]

RewriteCond %{REQUEST_FILENAME} .*zip$|.*pdf$|.*mp3$ [NC]
RewriteRule (.*) /halaman_download.php?file=$1 [R]

keterangan:
- baris ke 3, yourdomain diganti dg nama domain anda
- baris ke 4, google, membolehkan download dari google
- baris ke 5, search, membolehkan download dari link hasil search

- baris 7, extensi file yang diatur tidak boleh download langsung
- baris 8, halaman redirect, …

2. Cara kedua menggunakan PHP.

cara ini agak triki, di htaccess anda harus didefinisikan redirect file yang didownload di arahkan ke file php di bawah ini

<?

$ref = $_SERVER[”HTTP_REFERER”];

if ( $ref != ‘http://www.yourdomain.com/halaman_download.php’ )
{
header(”Location:http://www.yourdomain.com/halaman_download.php”);
exit;
} else {
header(”Content-type: $filetype”);
header(”Content-Disposition: attachment; filename=\”$filename\”");
header(”Content-Length: $filesize”);

echo file_get_contents($filepath);
}
?>

3. Cara ketiga, tidak mempublikasikan URL file.

– jangan pernah mempublikasikan URLnya sehingga nggak ada yang bisa download langsung
– dengan PHP, kita bisa meng-generate random encrypted URL,
– misalnya: download/g6Tgskd93/file.zip
– random URL tersebut berbasis session dg waktu terbatas
– lalu, kalo ada yg download dan URL sudah expired, tinggal di-redirect aja.

<? echlo ?> 

Berikan Komentar