SQUID LUSCA url_rewrite_program Untuk Partial Content code 206
kali ini sy share artikel request , artikel ini diambil dari Forum MikroTik, saya hanya memberikan panduan agar artikel tersebut bisa dipakai dan berjalan mulus. Tujuannya adalah untuk melakukan caching content partial code 206 yang tidak bisa dilakukan oleh SQUID LUSCA. Selamat belajar.
yang perlu disiapkan :
CPU yang sudah terinstall
- FreeBSD 9.1
- LUSCA_HEAD-r14809
- Web Server Lighttpd
IP Web Server Lighttpd 10.10.7.90 port 80
Action:
1. copy paste perintah berikut ini melalui Putty:
mkdir /usr/local/www/data/updatecache
mkdir /usr/local/www/data/updatecache/4shared
2. copy paste dan simpan skrip berikut sebagai 4shared.pl, copy ke folder /usr/local/etc/squid/ :
#!/usr/bin/perl
#Coded and Tested By Keblux
#Squid Url Rewriter untuk preview streaming di 4shared.com
#silahkan dibongkar2/dijual/dibuang/ tanpa menghilangkan kredit
$ |=1;
while (<>) {
$ input=$ _;
@tmp=split(/ /,$ input);
chomp(@tmp);
$ url = $ tmp[0];
if($ url =~ m/^http:\/\/(.*?)\.(.*?)\/(.*?)\/(dlink__2Fdownload_2F([a-zA-Z0-9]+))([a-zA-Z0-9-_]+)\/([^\/\?\&]*\.[^\/\?\&]{3,4})$ /)
{
#Regexp yang cocok
# dengan url strings "http://dc396.4shared.com/img/66978325/e4c433ab/dlink__2Fdownload_2FaxtQ2S6m_3Ftsid_3D20110811-195615-be366c67/preview.mp3"
#1: (dc396)
#2: (4shared.com)
#3: (img/66978325/e4c433ab)
#4: (dlink__2Fdownload_2FaxtQ2S6m)
#5: (axtQ2S6m) <- data-blogger-escaped--="" data-blogger-escaped-5="" data-blogger-escaped-cocok="" data-blogger-escaped-ini="" data-blogger-escaped-kita="" data-blogger-escaped-menggunakan="" data-blogger-escaped-pilih="" data-blogger-escaped-preview.mp3="" data-blogger-escaped-regexp="" data-blogger-escaped-tsid_3d20110811-195615-be366c67="" data-blogger-escaped-yang=""> $ 5 untuk dimasukan ke function prosses
#mengirimkan url 4shared beserta unique nama file dari 4shared
$ url_hasil = &prosess($ url,$ 5);
#mengirimkan kembali url yang telah diprosess ke client
print $ url_hasil ."\n";
}
else {
#jika bukan url yang mengandung regexp dlink__2Fdownload_2F, url tidak di prosess
print $ url. "\n";
}
}
#core prossess simple dan ngak rumit
sub prosess
{
my $ url_prosess=$ _[0];
my $ file="4shared-".$ _[1];
#sesuaikan path /usr/local/www/data/updatecache/4shared/ dengan document root webserver anda!!PENTING!!
if(-e "/usr/local/www/data/updatecache/4shared/$ file.mp3") {
$ url_hasil="http://10.10.7.90/updatecache/4shared/$ file.mp3";
} else {
$ url_hasil=$ url_prosess;
#bugs fixed delay diclient waktu streaming di pecah ke function download T_T ngak ngaruh
&download($ url_prosess,$ file);
}
#kirim hasil prosess ke atas
return $ url_hasil;
}
sub download
{
my $ url_prosess=$ _[0];
my $ file=$ _[1];
#karena response yg didapat adalah 206 partial content, wget tidak dapat mendownload file terpaksa pake fetch, kalo belum ada install dulu!!PENTING!!
system("fetch -o /usr/local/www/data/updatecache/4shared/$ file.mp3 $ url_prosess");
#rubah permission agar dapat dibaca client, kambali rubah pathnya dengan document root webserver anda
chmod(0644, "/usr/local/www/data/updatecache/4shared/$ file.mp3");
}
#abis.....
3. selanjutnya jalankan lagi perintah berikut :
chmod 755 /usr/local/etc/squid/4shared.pl
chmod 777 /usr/local/www/data/updatecache
4. lalu edit file squid.conf, tambahkan baris berikut dan simpan :
url_rewrite_program /usr/local/etc/squid/4shared.pl
5. Reboot CPU Proxy dengan mengetikkan perintah :
reboot
Test
OK. Saatnya uji coba, buka website 4shared dan dengerin sebuah lagu disana
jika sudah selesai, coba cek access.log proxy, TCP_MISS/206
sekarang, close browser dan buka kembali lagu yang sama, cek access.log proxy TCP_MISS/200 dari IP 10.10.7.90 – Web Server
close browser dan buka lagi lagu yang sama, cek access.log proxy TCP_HIT/200
Web Server Lighttpd |
SQUID LUSCA url_rewrite_program Untuk Partial Content code 206
Description : SQUID LUSCA url_rewrite_program Untuk Partial Content code 206 kali ini sy share artikel request , artikel ini diambil dari Forum MikroTik...
0 Response to "SQUID LUSCA url_rewrite_program Untuk Partial Content code 206"
Posting Komentar