Skip to main content

Redirect Sub Directory Ke Mesin Lain (Reverse Proxy Apache)

Untuk mengintegrasikan demo site yang terinstall di mesin lain ke mesin utama yang menyediakan layanan informasi perusahaan, kita harus bisa me-redirect request yang biasanya direpresentasikan sebagai sub direktory ke server target.

Satu kasus penggunaan reverse proxy adalah bila kita cuma punya 1 mesin yang sudah diset untuk servis di IP public dengan suatu domain/sub domain tertentu tapi ada beberapa mesin juga yang harus bisa diakses dari internet. Andaikan kita juga memegang otoritas admin network, mungkin, kita bisa memainkan port atau bila perlu IP publik yang masih bisa digunakan.
Tapi ini kenyataannya, yang kita punya ya cuma www.namadomain.kom dan beberapa server yang harus service di internet.
Bagaimana caranya?
Copy semua aplikasinya ke server yang sudah jelas bisa diakses dari internet?
Pastinya tidak, karena yang sekarang aja mesinnya sudah ngos-ngosan apalagi tambah beberapa layanan lagi. Jangan! Kasian dia.
Terus bagaimana?
Manfaatkan fitur reverse proxy dari apache untuk meredirect akses ke mesin lain di belakang mesin utama. Praktisnya gini, kita install satu mesin yang bakal jadi reverse proxy, kemudian beberapa mesin kita suruh berdiri di belakang proxy. Semua akses liwat proxy. Gimana? Sudah kebayang? Kalo belun kebayang, lihat gambar ini.

Reverse proxy server


Dari gambar di atas, setiap request dari client, yang menerima adalah apache server yang difungsikan sebagai reverse proxy server. Dari sini baru kemudian akan diteruskan ke server aselinya.
Terus, gimana konfigurasinya?
Gampang, nih...
Pertama install dulu servernya yang mau dipake buat reverse proxy server. Make Ubuntu aja biar gampang. Install sampe ke Apache nya. Kalo dah selesai installnya, sekarang liat langkahnya.

Pertama install seluruh modul yang dibutuhin.


root@revserver:~#a2enmod proxy[enter]
root@revserver:~#a2enmod proxy_http[enter]
root@revserver:~#a2enmod proxy_html[enter]
root@revserver:~#a2enmod headers[enter]


Kemudian buka apache2.conf di /etc/apache. Tambahkan baris berikut:


LoadFile /usr/lib/x86_64-linux-gnu/libxml2.so.2


Bila file libxml2.so,2 tidak diketemukan, bisa diinstall terlebih dahulu dengan menjalankan perintah berikut:


root@revserver:~# apt-get install libxml2


Selanjutnya kita edit file "default" di /etc/apache/site-available. Tambahkan baris-baris berikut.


<virtualhost>
ServerAdmin webmaster@localhost
ServerName www.namadomain.ko.id
ServerAlias namadomain.ko.id
DocumentRoot /var/www/homepage
ProxyRequests Off
ProxyPreserveHost On
ProxyPass /demo1/ http://10.20.30.40:8080/ #contoh aja
ProxyPass /demo2/ http://20.30.40.50:8080/appnya/ #masih contoh aja
ProxyPass /demo3/ http://20.30.40.50:8080/demonya/ #suwer masih contoh aja
ProxyHTMLURLMap http://10.20.30.40:8080 /demo1
ProxyHTMLURLMap http://20.30.40.50:8080/appnya /demo2
ProxyHTMLURLMap http://40.50.60.70:8080/demonya /demo3

<location demo1>
  ProxyPassReverse /
  SetOutputFilter proxy-html
  ProxyHTMLURLMap / /demo1/
  RequestHeader unset Accept-Encoding
</location>

<location demo2>
  ProxyPassReverse /
  SetOutputFilter proxy-html
  ProxyHTMLURLMap / /demo2/
  RequestHeader unset Accept-Encoding
</location>

<location demo3>
  ProxyPassReverse /
  SetOutputFilter proxy-html
  ProxyHTMLURLMap / /demo3/
  RequestHeader unset Accept-Encoding
</location>


</virtualhost>



setelah disimpan, kemudian kita restart apache server kita, dan kita coba untuk membuka baik "/demo1/", "/demo2/", dan "/demo3/" dari client ke alamat biasanya. Misal http://www.namadomain.ko.id/demo1/ atau ../demo2/ atau .../demo3/

Popular posts from this blog

Snort dan Suricata IDPS

Sugeng pagi, Mas! Pagi, gimana kabarnya? Baik, Mas. Gini, Mas! Saya lagi pusing ngurusin jaringan di kantor. Pusing kenapa? Itu lo, Mas, virus tau-tau nongol tanpa permisi.  Bikin jaringan jadi lemot. Yang lebih repotnnya lagi, kita gak tau dari sebelah mana penyebarannya. Lah, gitu aja kok pusing.  Kamu punya alat monitoring macem IDS gak? Apa itu IDS, Mas? IDS itu, singkatan coro londo Intrussion Detection System.  Maksudnya sistem buat mendeteksi aktifitas penyusupan. La, itu kan bukan antivirus, Mas! Lagian mana ada sih yang nyusup di kantor saya.  Apalagi kantor banyakan mainnya di jaringan private. La ini, yang salah! Jangan beranggapan bahwa setiap penyusupan itu datangnya dari luar. Ancaman kebocoran itu paling besar justeru datangnya dari dalam. Dan satu hal lagi penyusupan tidak harus terjadi dalam satu saat.  Seperti proses penyusupan yang dilakukan dengan menggunakan kuda trojan.  Para penyusup justeru anteng dulu di dalam kuda trojan....

Null Allowed dan PK di Sybase ASE

Ha ha ha ha... Setelah nginep (eh nginep nggak dong la wong gak tidur) semaleman buat migrasi data, aku dapet PR baru. Menyempurnakan tool yang aku bikin. Ya harus disempurnakan la wong jalannya masih geyal-geyol. Hi hi hi hi. Hari ini, aku mencoba untuk membuat satu routine buat mengekstrak DDL bukan lewat tool yang dah ada dari Sybase, tapi murni bikinanku sendiri. Setelah tengok sana tengok sini make matanya Oom Google, akhirnya bisa terbentuk juga query dasar buat ekstrak DDL. Tapi masalah kemudian adalah menentukan suatu kolom masuk ke PK dan kemudian apakah suatu kolom itu nullallowed. Ternyata kunci untuk masuk ke PK ada di system table yang namanya 'sysindexes' dan untuk null allowed karena mengacu ke kolom ada di syscolumns. Check ini ada di kolom status dari syscolumns. Kondisi untuk check adalah 'status & 8' jika menhasilkan lebih besar dari 0 maka dia null allowed jika sama dengan 0 maka dia not null. Kemudian untuk masuk ke pk atau tidak checknya ...

Bincang Ringan, Misi Kristen dan Dakwah Islam (I)

Dalam sebuah diskusi dengan santri saya mengajukan pertanyaan, "Bolehkah orang Kristen menyiarkan agamanya ke orang Islam ?" Serentak mereka menjawab "Tidak boleh". Kemudian saya mengajukan pertanyaan susulan, "Rekan-rekan santri senang tidak, kalau ada orang yang masuk Islam karena didakwahi oleh Koh Hany," dan secara serempak juga mereka menjawab "Tentu senang ustadz." Kontan saya timpali, lha kok nggak adil, orang Kristen nggak boleh menyiarkan agama ke umat Islam, sementara umat Islam boleh mendakwahi orang Kristen. Saya jadi ingat kutipan dari Syaikh Ali Mahfuzh, guru besar Ilmu Da'wah wal Irsyad, Anggota Majelis Ulama dan Pembina Ilmu Dakwah pada Universitas Al Azhar dalam bukunya Widji Saksono, Mengislamkan Jawa, terbitan Mizan tahun 1995. "Barangsiapa memperhatikan dengan seksama, tahulah ia bahwa sesungguhnya dakwah kepada Allah itu adalah sendi kehidupan suatu agama, pangkal syi'ar suatu kepercayaan. Syahdan pad...