Mudahnya membuat regex untuk helper storeurl atau storeid di SQUID Web PROXY untuk PEMULA
August 27, 2014 — mikrotiksquidMudahnya membuat regex untuk helper storeurl atau storeid di SQUID Web PROXY untuk PEMULA
Ada kabar gembira…
Apa tuh..?
Semua orang bisa buat regex storeurl/storeid..MUDAH bangetss !! :-D
CMIIW (Cuma Mau Ingetin Indahnya Woles) hehehe
apa fungsi helper storeurl atau storeid?
fungsi storeurl atau storeid adalah untuk menulis ulang “URL-URL dinamis” ke alamat “URL statis” supaya bisa di-“HIT” oleh SQUID
ini versi saya lho penjelasannya, boleh beda dengan versi kawan2. Lha wong Quick Count Capres aja boleh beda koq :-D
Apakah URL dinamis tidak bisa di-“HIT” oleh SQUID?
mari kita lihat contoh dibawah ini
saya coba download MP3 surat yasin dari 4shared di alamat http://www.4shared.com/mp3/WWBGUKwf/036_Surat_Yasin_.htm
ternyata untuk konten mp3 surat yasin yang kita download diarahkan ke mesin-mesin CDN dengan alamat URL yang dinamis
http://dc436.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140710-220825-db6d3b73&lgfp=2000
http://dc474.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140710-222355-d60ed0a8&lgfp=2000
http://dc436.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140710-230027-59959c01&lgfp=2000
URL diatas itu URL “dinamis” dengan konten yg “sama”
TAPI SQUID akan menganggap kedua konten diatas adalah berbeda, sehingga akan selalu “MISS” , padahal sudah didownload berulang-ulang
cek access.log
1405030243.320 110241 192.168.0.251 TCP_MISS/200 12753873 GET http://dc436.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140710-220825-db6d3b73&lgfp=2000 – ORIGINAL_DST/199.101.133.64 audio/mpeg
1405031073.012 14070 192.168.0.251 TCP_MISS/200 12753873 GET http://dc474.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140710-222355-d60ed0a8&lgfp=2000 – ORIGINAL_DST/78.140.186.28 audio/mpeg
1405033362.093 114522 192.168.0.251 TCP_MISS/200 12753873 GET http://dc436.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140710-230027-59959c01&lgfp=2000 – ORIGINAL_DST/199.101.133.64 audio/mpeg
Bagaimana supaya bisa ter-“HIT” ?
Nah, seperti udh disebutkan diatas, disini kita butuh helper storeurl/storeid
helper ini akan mencocokkan pola URL-URL dinamis diatas dengan “regex” dan menulis ulang/mengganti URL diatas ke “URL statis”
Apa itu Regex?
Regular Expression atau regex adalah pattern/pola yg digunakan untuk mencocokkan teks
Alat bantu
Saya sih msh bodoh buat regex beginian jadi mesti pake alat bantu :-D. Alat bantu saya ketika membuat regex adalah website rubular.com. ntar kalo sudah terbiasa, ga perlu alat bantu lagi.
Analisa log
OK, lanjut kita buat regex dari URL-URL diatas. Kalo saya biasanya ambil beberapa URL dari access.log untuk dianalisa pola URL nya
Link 1 : http://www.4shared.com/mp3/WWBGUKwf/036_Surat_Yasin_.htm
http://dc436.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140710-220825-db6d3b73&lgfp=2000
http://dc474.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140710-222355-d60ed0a8&lgfp=2000
http://dc436.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140710-230027-59959c01&lgfp=2000
Pertama adalah, kita cari dulu bagian dari ketiga URL diatas yang “dinamis” atau yang berubah-ubah. yang saya cetak tebal adalah bagian2 dari URL yang dinamis
1. dc436,dc474
2. tsid=20140710-220825-db6d3b73&lgfp=2000 , 20140710-222355-d60ed0a8&lgfp=2000 , 20140710-230027-59959c01&lgfp=2000
lanjut, kita buka website rubular.com
1. masukin ketiga URL diatas pada kolom “Your test string”
http://s18.postimg.org/c0w12cfyh/1_rubular.png
2. copy 1 URL dari kolom “Your test string” , lalu paste di kolom “Your Regular Expression”
http://s11.postimg.org/j4pt7dvf7/2_rubular.png
3. Ok. Sekarang liat ada pesan error “Forward slashes must be escaped”. tambahkan karakter “\” sebelum karakter “/” pada semua bagian URL di kolom “Your Regular Expression”
http://s24.postimg.org/wlmof3945/3_rubular.png
4. sekarang muncul pesan “No Matches” artinya regex yang kita buat belum cocok. Tenang saudara-saudara. Mari kita utak atik :-D. hapus “dc436.” ganti menjadi “.*”
http://s1.postimg.org/6tkh3w9zj/4_rubular.png
5. masih muncul pesan “No Matches” artinya regex yang kita buat belum cocok. Sabar-sabar :-D . sekarang hapus “?tsid=20140710-220825-db6d3b73&lgfp=2000” ganti menjadi “.*”
http://s23.postimg.org/5j8apcy9n/5_rubular.png
6. Asyeek asyeek..udh muncul di kolom “Match result” berarti regex yang kita buat sudah benar. Mudah pake banget ya ? :-D
pertanyaan berikutnya adalah apa sih arti dari “.*” ?
saya ambil arti karakter . dan * dari website rubular jg sebagai referensi pada bagian regex quick reference
. = Any single character ( 1 karakter apa saja) misal d c 1 2 3 & * + – (termasuk spasi)
http://s14.postimg.org/ryrk56yox/6_rubular.png
* = Zero or more (nol atau lebih). tanda bintang diletakkan setelah sebuah karakter, yang artinya karakter tersebut dapat ada nol atau lebih perulangan yang diharapkan dalam pola.
jadi .* artinya nol atau lebih pengulangan karakter apa aja boleh
Kalau sudah cocok, maka regex yang sudah kita buat tadi yaitu ^http:\/\/.*4shared\.com\/(download\/WWBGUKwf\/036_Surat_Yasin_.mp3).* tinggal kita masukkan ke script helper storeurl atau storeid
Membuat helper storeid (SQUID3X)
pico /etc/squid/pembantuku.pl
copy paste script dibawah ini
#!/usr/bin/perl
$|=1;
while (<>) {
@X = split;
$x = $X[0] . ” “;
if ($X[1]=~m/^http:\/\/.*4shared.com\/(download\/WWBGUKwf\/036_Surat_Yasin_.mp3).*/) {
print $x . “OK store-id=http://download.di4shared.squidlover.internal/$1\n”;
} else {
print $x . “OK store-id=$X[1]\n”;
}
}
simpan file
jalankan command chmod +x /etc/squid/pembantuku.pl
backup script jg bisa diliat di >> http://pastebin.com/4VNnVahb
buka file squid.conf, masukkan config dibawah ini :
#buat ACL dengan url_regex untuk 4shared
acl 4shared url_regex -i ^http:\/\/.*4shared.com\/(download\/WWBGUKwf\/036_Surat_Yasin_.mp3).*
store_id_program /etc/squid/pembantuku.pl
store_id_children 1 startup=1 idle=1 concurrency=10000
store_id_access allow 4shared
store_id_access deny all
Simpan squid.conf
jalankan command squid -k reconfigure lalu service squid restart
test dah buka http://www.4shared.com/mp3/WWBGUKwf/036_Surat_Yasin_.htm
Hasilnya
access.log
Anda bisa liat dibawah ini dari domain dc474.4shared.com atau dc436.4shared.com bisa HIT
1405086972.677 2133 192.168.6.5 TCP_HIT/200 12753688 GET http://dc474.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140711-065534-7242007a&lgfp=2000 – HIE
R_NONE/- audio/mpeg
1405087089.933 1875 192.168.6.5 TCP_HIT/200 12753688 GET http://dc436.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140711-065739-9d6cb268&lgfp=2000 – HIE
R_NONE/- audio/mpeg
cache.log dengan debug options 84,9
dibawah ini terlihat proses rewriting URL dinamis ke URL statis yang kita buat di helper storeid
2014/07/11 13:56:10.544 kid1| helper.cc(415) helperSubmit: buf[153]=http://dc474.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140711-065534-7242007a&lgfp=2000 192.168.6.5/- – GET myip=78.140.186.28 myport=80
2014/07/11 13:56:10.544 kid1| helper.cc(906) helperHandleRead: helperHandleRead: 99 bytes from store_id #Hlpr0
2014/07/11 13:56:10.544 kid1| helper.cc(915) helperHandleRead: accumulated[99]=0 OK store-id=http://download.di4shared.squidlover.internal/download/WWBGUKwf/036_Surat_Yasin_.mp3
2014/07/11 13:58:08.140 kid1| helper.cc(415) helperSubmit: buf[154]=http://dc436.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140711-065739-9d6cb268&lgfp=2000 192.168.6.5/- – GET myip=199.101.133.64 myport=80
2014/07/11 13:58:08.140 kid1| helper.cc(906) helperHandleRead: helperHandleRead: 99 bytes from store_id #Hlpr0
2014/07/11 13:58:08.140 kid1| helper.cc(915) helperHandleRead: accumulated[99]=0 OK store-id=http://download.di4shared.squidlover.internal/download/WWBGUKwf/036_Surat_Yasin_.mp3
Apakah problem download dari 4shared selesai?
Tentu saja belum, saat ini mungkinAnda senang karena download dari link http://www.4shared.com/mp3/WWBGUKwf/036_Surat_Yasin_.htmsudah bisa “HIT”, bagaimana jika Anda coba download dari 4shared link yanglain misalnya http://www.4shared.com/mp3/9yI4I09b/Al-Quran_Surah_Ar_rahman-_Ahma.htm
Opsss….MISSlagi. Anda tau kenapa MISSlagi? Ya..karena kita hanya buat regex khusus link ini http://www.4shared.com/mp3/WWBGUKwf/036_Surat_Yasin_.htm saja. OK, berarti kita harus modifikasilagi regex yang sudah kita buat supaya semua download dari 4shared bisater-“HIT”.
Bagaimanacaranya?
Kita harus kumpulkan log (ambildari file access.log) dari download di 4shared sebanyak-banyaknya sehingganantinya mempermudah kita membuat regex-nya.
Berikut dibawah ini adalah log URL dinamis dari download di 4shared :
http://dc313.4shared.com/download/wZqn2XnC/Padi_-_Kasih_Tak_Sampai.mp3?tsid=20140712-020244-61c996d&lgfp=2000
http://dc100.4shared.com/download/wZqn2XnC/Padi_-_Kasih_Tak_Sampai.mp3?tsid=20140712-021130-345586b3&lgfp=2000
http://dc480.4shared.com/download/9yI4I09b/Al-Quran_Surah_Ar_rahman-_Ahma.mp3?tsid=20140710-232225-d77b2969&lgfp=2000
http://dc436.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140710-220825-db6d3b73&lgfp=2000
http://dc474.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140710-222355-d60ed0a8&lgfp=2000
Sekarang coba buka kembali website rubular.com
1. Copy semua URL diatas ke kolom “Your test string”
http://s27.postimg.org/mr2vp1hc3/7_rubular.png
2. Masukkan regex yang sudah kita buat sebelumnya kekolom “Your regular expression”
http://s11.postimg.org/bzjxili9v/8_rubular.png
Anda bisa lihat bahwa hanya download dari link surat yasin yang baru“match”
3. Coba lihat pada URL dinamis diatas, path dan nama file yangberubah-ubah pada setiap link download di 4shared adalah setelah download/.coba perhatikan yang saya cetak tebal:
http://dc313.4shared.com/download/wZqn2XnC/Padi_-_Kasih_Tak_Sampai.mp3?tsid=20140712-020244-61c996d&lgfp=2000
http://dc100.4shared.com/download/wZqn2XnC/Padi_-_Kasih_Tak_Sampai.mp3?tsid=20140712-021130-345586b3&lgfp=2000
http://dc480.4shared.com/download/9yI4I09b/Al-Quran_Surah_Ar_rahman-_Ahma.mp3?tsid=20140710-232225-d77b2969&lgfp=2000
http://dc436.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140710-220825-db6d3b73&lgfp=2000
http://dc474.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140710-222355-d60ed0a8&lgfp=2000
4. Nah, bagian ini yang akan kita buat regexnya. Masih sama dengansebelumnya kita gunakan saja regex .* untuk menggantikan path dan namafile yang berubah-ubah tadi. Mudah kan ? :-D
5. Hapus WWBGUKwf\/036_Surat_Yasin_.mp3
http://s2.postimg.org/zdu7jqcx5/9_rubular.png
6. Ganti dengan .*
Taaaraaaaa…sukses :-D . Semua URL dinamis sudah match
http://s28.postimg.org/bpgmsqne5/10_rubular.png
Tugas berikutnya adalah mengganti config pada squid.conf dan merubahscript pada file pembantuku.pl
Filepembantuku.pl UPDATE!
#!/usr/bin/perl
$|=1;
while (<>) {
@X = split;
$x = $X[0] . ” “;
if ($X[1]=~m/^http:\/\/.*4shared.com\/(download\/.*).*/) {
print $x . “OKstore-id=http://download.di4shared.squidlover.internal/$1\n”;
} else {
print $x . “OKstore-id=$X[1]\n”;
}
}
Filesquid.conf UPDATE!
#buat ACL dengan url_regex untuk4shared (ambil dari regex 4shared diatas)
acl4shared url_regex -i ^http:\/\/.*4shared.com\/(download\/.*).*
Jalankancommand squid -k reconfigure dan service squid restart
Sekarang test download dari link apapundi 4shared. Aktifkan debug options 84,9 dan cek cache.log , pastikan semua URL dinamis dari 4shared sudah di tulisulang ke URL statis http://download.di4shared.squidlover.internal/path/namafile
Sepertidibawah ini :
http://download.di4shared.squidlover.internal/download/wZqn2XnC/Padi_-_Kasih_Tak_Sampai.mp3
http://download.di4shared.squidlover.internal/download/9yI4I09b/Al-Quran_Surah_Ar_rahman-_Ahma.mp3
http://download.di4shared.squidlover.internal/download/WWBGUKwf/036_Surat_Yasin_.mp3
UPDATE
Website lain sejenis rubular.com adalah regexr.com. Di websiteregexr.com, Anda juga bisa menampilkan langsung replacement/substitution ataualamat URL statis yang akan kita masukkan di helper storeurl atau storied.
http://s2.postimg.org/dk5cbf7jd/regexr.png
INFO :
Sedekah untuk GAZA – BCA 603 030 8059an. Yysn Daarul Qur’an Nusantara. Info: 021 500311
atau MER-C http://www.mer-c.org/index.php/id/
Bank Central Asia (BCA)
Rek. No. 686.033.5555 (Kemanusiaan Palestina)
Rek. No. 686.0153678 (Alkes RS Indonesia – Palestina)
Bank Mandiri
Rek. No. 124.000.8111925 (Alkes RS Indonesia – Palestina)
Rek. No. 124.000.3753754 (Kemanusiaan Palestina)Bank Syariah Mandiri (BSM)
Rek. No. 700.1352.061 (Alkes RS Indonesia – Palestina)
Bank Negara Indonesia Syariah (BNI Syariah)
Rek. No. 081.119.2973 (Alkes RS Indonesia – Palestina)
Bank Muamalat Indonesia (BMI)
Rek. No. 301.00521.15 (Alkes RS Indonesia – Palestina)
Bank Rakyat Indonesia (BRI)
Rek. No. 033.501.0007.60308 (Alkes RS Indonesia – Palestina)
Apa tuh..?
Semua orang bisa buat regex storeurl/storeid..MUDAH bangetss !! :-D
CMIIW (Cuma Mau Ingetin Indahnya Woles) hehehe
apa fungsi helper storeurl atau storeid?
fungsi storeurl atau storeid adalah untuk menulis ulang “URL-URL dinamis” ke alamat “URL statis” supaya bisa di-“HIT” oleh SQUID
ini versi saya lho penjelasannya, boleh beda dengan versi kawan2. Lha wong Quick Count Capres aja boleh beda koq :-D
Apakah URL dinamis tidak bisa di-“HIT” oleh SQUID?
mari kita lihat contoh dibawah ini
saya coba download MP3 surat yasin dari 4shared di alamat http://www.4shared.com/mp3/WWBGUKwf/036_Surat_Yasin_.htm
ternyata untuk konten mp3 surat yasin yang kita download diarahkan ke mesin-mesin CDN dengan alamat URL yang dinamis
http://dc436.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140710-220825-db6d3b73&lgfp=2000
http://dc474.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140710-222355-d60ed0a8&lgfp=2000
http://dc436.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140710-230027-59959c01&lgfp=2000
URL diatas itu URL “dinamis” dengan konten yg “sama”
TAPI SQUID akan menganggap kedua konten diatas adalah berbeda, sehingga akan selalu “MISS” , padahal sudah didownload berulang-ulang
cek access.log
1405030243.320 110241 192.168.0.251 TCP_MISS/200 12753873 GET http://dc436.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140710-220825-db6d3b73&lgfp=2000 – ORIGINAL_DST/199.101.133.64 audio/mpeg
1405031073.012 14070 192.168.0.251 TCP_MISS/200 12753873 GET http://dc474.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140710-222355-d60ed0a8&lgfp=2000 – ORIGINAL_DST/78.140.186.28 audio/mpeg
1405033362.093 114522 192.168.0.251 TCP_MISS/200 12753873 GET http://dc436.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140710-230027-59959c01&lgfp=2000 – ORIGINAL_DST/199.101.133.64 audio/mpeg
Bagaimana supaya bisa ter-“HIT” ?
Nah, seperti udh disebutkan diatas, disini kita butuh helper storeurl/storeid
helper ini akan mencocokkan pola URL-URL dinamis diatas dengan “regex” dan menulis ulang/mengganti URL diatas ke “URL statis”
Apa itu Regex?
Regular Expression atau regex adalah pattern/pola yg digunakan untuk mencocokkan teks
Alat bantu
Saya sih msh bodoh buat regex beginian jadi mesti pake alat bantu :-D. Alat bantu saya ketika membuat regex adalah website rubular.com. ntar kalo sudah terbiasa, ga perlu alat bantu lagi.
Analisa log
OK, lanjut kita buat regex dari URL-URL diatas. Kalo saya biasanya ambil beberapa URL dari access.log untuk dianalisa pola URL nya
Link 1 : http://www.4shared.com/mp3/WWBGUKwf/036_Surat_Yasin_.htm
http://dc436.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140710-220825-db6d3b73&lgfp=2000
http://dc474.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140710-222355-d60ed0a8&lgfp=2000
http://dc436.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140710-230027-59959c01&lgfp=2000
Pertama adalah, kita cari dulu bagian dari ketiga URL diatas yang “dinamis” atau yang berubah-ubah. yang saya cetak tebal adalah bagian2 dari URL yang dinamis
1. dc436,dc474
2. tsid=20140710-220825-db6d3b73&lgfp=2000 , 20140710-222355-d60ed0a8&lgfp=2000 , 20140710-230027-59959c01&lgfp=2000
lanjut, kita buka website rubular.com
1. masukin ketiga URL diatas pada kolom “Your test string”
http://s18.postimg.org/c0w12cfyh/1_rubular.png
2. copy 1 URL dari kolom “Your test string” , lalu paste di kolom “Your Regular Expression”
http://s11.postimg.org/j4pt7dvf7/2_rubular.png
3. Ok. Sekarang liat ada pesan error “Forward slashes must be escaped”. tambahkan karakter “\” sebelum karakter “/” pada semua bagian URL di kolom “Your Regular Expression”
http://s24.postimg.org/wlmof3945/3_rubular.png
4. sekarang muncul pesan “No Matches” artinya regex yang kita buat belum cocok. Tenang saudara-saudara. Mari kita utak atik :-D. hapus “dc436.” ganti menjadi “.*”
http://s1.postimg.org/6tkh3w9zj/4_rubular.png
5. masih muncul pesan “No Matches” artinya regex yang kita buat belum cocok. Sabar-sabar :-D . sekarang hapus “?tsid=20140710-220825-db6d3b73&lgfp=2000” ganti menjadi “.*”
http://s23.postimg.org/5j8apcy9n/5_rubular.png
6. Asyeek asyeek..udh muncul di kolom “Match result” berarti regex yang kita buat sudah benar. Mudah pake banget ya ? :-D
pertanyaan berikutnya adalah apa sih arti dari “.*” ?
saya ambil arti karakter . dan * dari website rubular jg sebagai referensi pada bagian regex quick reference
. = Any single character ( 1 karakter apa saja) misal d c 1 2 3 & * + – (termasuk spasi)
http://s14.postimg.org/ryrk56yox/6_rubular.png
* = Zero or more (nol atau lebih). tanda bintang diletakkan setelah sebuah karakter, yang artinya karakter tersebut dapat ada nol atau lebih perulangan yang diharapkan dalam pola.
jadi .* artinya nol atau lebih pengulangan karakter apa aja boleh
Kalau sudah cocok, maka regex yang sudah kita buat tadi yaitu ^http:\/\/.*4shared\.com\/(download\/WWBGUKwf\/036_Surat_Yasin_.mp3).* tinggal kita masukkan ke script helper storeurl atau storeid
Membuat helper storeid (SQUID3X)
pico /etc/squid/pembantuku.pl
copy paste script dibawah ini
#!/usr/bin/perl
$|=1;
while (<>) {
@X = split;
$x = $X[0] . ” “;
if ($X[1]=~m/^http:\/\/.*4shared.com\/(download\/WWBGUKwf\/036_Surat_Yasin_.mp3).*/) {
print $x . “OK store-id=http://download.di4shared.squidlover.internal/$1\n”;
} else {
print $x . “OK store-id=$X[1]\n”;
}
}
simpan file
jalankan command chmod +x /etc/squid/pembantuku.pl
backup script jg bisa diliat di >> http://pastebin.com/4VNnVahb
buka file squid.conf, masukkan config dibawah ini :
#buat ACL dengan url_regex untuk 4shared
acl 4shared url_regex -i ^http:\/\/.*4shared.com\/(download\/WWBGUKwf\/036_Surat_Yasin_.mp3).*
store_id_program /etc/squid/pembantuku.pl
store_id_children 1 startup=1 idle=1 concurrency=10000
store_id_access allow 4shared
store_id_access deny all
Simpan squid.conf
jalankan command squid -k reconfigure lalu service squid restart
test dah buka http://www.4shared.com/mp3/WWBGUKwf/036_Surat_Yasin_.htm
Hasilnya
access.log
Anda bisa liat dibawah ini dari domain dc474.4shared.com atau dc436.4shared.com bisa HIT
1405086972.677 2133 192.168.6.5 TCP_HIT/200 12753688 GET http://dc474.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140711-065534-7242007a&lgfp=2000 – HIE
R_NONE/- audio/mpeg
1405087089.933 1875 192.168.6.5 TCP_HIT/200 12753688 GET http://dc436.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140711-065739-9d6cb268&lgfp=2000 – HIE
R_NONE/- audio/mpeg
cache.log dengan debug options 84,9
dibawah ini terlihat proses rewriting URL dinamis ke URL statis yang kita buat di helper storeid
2014/07/11 13:56:10.544 kid1| helper.cc(415) helperSubmit: buf[153]=http://dc474.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140711-065534-7242007a&lgfp=2000 192.168.6.5/- – GET myip=78.140.186.28 myport=80
2014/07/11 13:56:10.544 kid1| helper.cc(906) helperHandleRead: helperHandleRead: 99 bytes from store_id #Hlpr0
2014/07/11 13:56:10.544 kid1| helper.cc(915) helperHandleRead: accumulated[99]=0 OK store-id=http://download.di4shared.squidlover.internal/download/WWBGUKwf/036_Surat_Yasin_.mp3
2014/07/11 13:58:08.140 kid1| helper.cc(415) helperSubmit: buf[154]=http://dc436.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140711-065739-9d6cb268&lgfp=2000 192.168.6.5/- – GET myip=199.101.133.64 myport=80
2014/07/11 13:58:08.140 kid1| helper.cc(906) helperHandleRead: helperHandleRead: 99 bytes from store_id #Hlpr0
2014/07/11 13:58:08.140 kid1| helper.cc(915) helperHandleRead: accumulated[99]=0 OK store-id=http://download.di4shared.squidlover.internal/download/WWBGUKwf/036_Surat_Yasin_.mp3
Apakah problem download dari 4shared selesai?
Tentu saja belum, saat ini mungkinAnda senang karena download dari link http://www.4shared.com/mp3/WWBGUKwf/036_Surat_Yasin_.htmsudah bisa “HIT”, bagaimana jika Anda coba download dari 4shared link yanglain misalnya http://www.4shared.com/mp3/9yI4I09b/Al-Quran_Surah_Ar_rahman-_Ahma.htm
Opsss….MISSlagi. Anda tau kenapa MISSlagi? Ya..karena kita hanya buat regex khusus link ini http://www.4shared.com/mp3/WWBGUKwf/036_Surat_Yasin_.htm saja. OK, berarti kita harus modifikasilagi regex yang sudah kita buat supaya semua download dari 4shared bisater-“HIT”.
Bagaimanacaranya?
Kita harus kumpulkan log (ambildari file access.log) dari download di 4shared sebanyak-banyaknya sehingganantinya mempermudah kita membuat regex-nya.
Berikut dibawah ini adalah log URL dinamis dari download di 4shared :
http://dc313.4shared.com/download/wZqn2XnC/Padi_-_Kasih_Tak_Sampai.mp3?tsid=20140712-020244-61c996d&lgfp=2000
http://dc100.4shared.com/download/wZqn2XnC/Padi_-_Kasih_Tak_Sampai.mp3?tsid=20140712-021130-345586b3&lgfp=2000
http://dc480.4shared.com/download/9yI4I09b/Al-Quran_Surah_Ar_rahman-_Ahma.mp3?tsid=20140710-232225-d77b2969&lgfp=2000
http://dc436.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140710-220825-db6d3b73&lgfp=2000
http://dc474.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140710-222355-d60ed0a8&lgfp=2000
Sekarang coba buka kembali website rubular.com
1. Copy semua URL diatas ke kolom “Your test string”
http://s27.postimg.org/mr2vp1hc3/7_rubular.png
2. Masukkan regex yang sudah kita buat sebelumnya kekolom “Your regular expression”
http://s11.postimg.org/bzjxili9v/8_rubular.png
Anda bisa lihat bahwa hanya download dari link surat yasin yang baru“match”
3. Coba lihat pada URL dinamis diatas, path dan nama file yangberubah-ubah pada setiap link download di 4shared adalah setelah download/.coba perhatikan yang saya cetak tebal:
http://dc313.4shared.com/download/wZqn2XnC/Padi_-_Kasih_Tak_Sampai.mp3?tsid=20140712-020244-61c996d&lgfp=2000
http://dc100.4shared.com/download/wZqn2XnC/Padi_-_Kasih_Tak_Sampai.mp3?tsid=20140712-021130-345586b3&lgfp=2000
http://dc480.4shared.com/download/9yI4I09b/Al-Quran_Surah_Ar_rahman-_Ahma.mp3?tsid=20140710-232225-d77b2969&lgfp=2000
http://dc436.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140710-220825-db6d3b73&lgfp=2000
http://dc474.4shared.com/download/WWBGUKwf/036_Surat_Yasin_.mp3?tsid=20140710-222355-d60ed0a8&lgfp=2000
4. Nah, bagian ini yang akan kita buat regexnya. Masih sama dengansebelumnya kita gunakan saja regex .* untuk menggantikan path dan namafile yang berubah-ubah tadi. Mudah kan ? :-D
5. Hapus WWBGUKwf\/036_Surat_Yasin_.mp3
http://s2.postimg.org/zdu7jqcx5/9_rubular.png
6. Ganti dengan .*
Taaaraaaaa…sukses :-D . Semua URL dinamis sudah match
http://s28.postimg.org/bpgmsqne5/10_rubular.png
Tugas berikutnya adalah mengganti config pada squid.conf dan merubahscript pada file pembantuku.pl
Filepembantuku.pl UPDATE!
#!/usr/bin/perl
$|=1;
while (<>) {
@X = split;
$x = $X[0] . ” “;
if ($X[1]=~m/^http:\/\/.*4shared.com\/(download\/.*).*/) {
print $x . “OKstore-id=http://download.di4shared.squidlover.internal/$1\n”;
} else {
print $x . “OKstore-id=$X[1]\n”;
}
}
Filesquid.conf UPDATE!
#buat ACL dengan url_regex untuk4shared (ambil dari regex 4shared diatas)
acl4shared url_regex -i ^http:\/\/.*4shared.com\/(download\/.*).*
Jalankancommand squid -k reconfigure dan service squid restart
Sekarang test download dari link apapundi 4shared. Aktifkan debug options 84,9 dan cek cache.log , pastikan semua URL dinamis dari 4shared sudah di tulisulang ke URL statis http://download.di4shared.squidlover.internal/path/namafile
Sepertidibawah ini :
http://download.di4shared.squidlover.internal/download/wZqn2XnC/Padi_-_Kasih_Tak_Sampai.mp3
http://download.di4shared.squidlover.internal/download/9yI4I09b/Al-Quran_Surah_Ar_rahman-_Ahma.mp3
http://download.di4shared.squidlover.internal/download/WWBGUKwf/036_Surat_Yasin_.mp3
UPDATE
Website lain sejenis rubular.com adalah regexr.com. Di websiteregexr.com, Anda juga bisa menampilkan langsung replacement/substitution ataualamat URL statis yang akan kita masukkan di helper storeurl atau storied.
http://s2.postimg.org/dk5cbf7jd/regexr.png
INFO :
Sedekah untuk GAZA – BCA 603 030 8059an. Yysn Daarul Qur’an Nusantara. Info: 021 500311
atau MER-C http://www.mer-c.org/index.php/id/
Bank Central Asia (BCA)
Rek. No. 686.033.5555 (Kemanusiaan Palestina)
Rek. No. 686.0153678 (Alkes RS Indonesia – Palestina)
Bank Mandiri
Rek. No. 124.000.8111925 (Alkes RS Indonesia – Palestina)
Rek. No. 124.000.3753754 (Kemanusiaan Palestina)Bank Syariah Mandiri (BSM)
Rek. No. 700.1352.061 (Alkes RS Indonesia – Palestina)
Bank Negara Indonesia Syariah (BNI Syariah)
Rek. No. 081.119.2973 (Alkes RS Indonesia – Palestina)
Bank Muamalat Indonesia (BMI)
Rek. No. 301.00521.15 (Alkes RS Indonesia – Palestina)
Bank Rakyat Indonesia (BRI)
Rek. No. 033.501.0007.60308 (Alkes RS Indonesia – Palestina)
-
Uccok Harahap, Ando Tblrb and 45 others like this.
-
Supri Saedomo sangat bermanfaat buat pemula seperti saya. trimakasih.
-
Ken Taridala trima kasih masta
-
MikroTiker N SquidLover blm kumplit. ntar dilanjut lg. insya Allah
-
Suili Wijaya Thanks banget sharingnya om
-
MikroTiker N SquidLover ok. sama2 om. silahkan koreksinya
-
Kira Ady’s mantap om
-
Andry Utama tinggalin jejak dulu
-
Zoiken Ametarasu hanya bisa mengatakan super duper sekali suhu MikroTiker N SquidLover untuk pembahasan pelajaran yg bermanfaat..
-
Infomersial Net mantap’s tutornya bos ditunggu kelanjutannya
-
MikroTiker N SquidLover updated
-
Zoky Raharjo Ijin nyimak
-
MikroTiker N SquidLover Mksh papanya Dhani Dhanu Dokter SQUID Indonesia atas donasinya utk GAZA. Semoga Allah ridho dan dibalas kebaikan berlimpah . Aamiin
-
Dhani Dhanu amin…msemoga temen2 yang lain bisa sedikit menyisihkan rejekinya untuk gaza.
-
Ando Tblrb mau nanya niih bang MikroTiker N SquidLover pd bag ===> “store_id_children 1 startup=1 idle=1 concurrency=10000” ,,,,,,,,apa fungsiny????dan cara memberikan nilai yg bnr agar meningkatkan kinerja squid tuuhhh gmn bng,,,,bs dijelaskan???makasih sebelumny bang,,,,,,,,,,,
-
Bldp Jimmy Papanya Said concurrency=10000 maksudnya running scriptnya bisa sebanyak itu sekaligus, saat dibutuhkan. yah tergantung kebutuhan juga… concurrency=8 aja sudah joss untuk warnet.
-
AL Amien 17 hari lagi lebaran bro…!!!!!
-
Raif Kafi mantap bgt!!
-
MikroTiker N SquidLover Lanjutgan
-
Hakeem Neu Distortion terima kasih banyak guru
-
Bayu Wibisono sip… pertanyaan yg kemaren terjawab sudah… makasih buat Dhani Dhanu dan MikroTiker N SquidLover buat kontribusinya… dan refresh pattern itu ada hubungan dengan storeurl.pl tidak?