Membuat Virtual Host di IIS

Beberapa waktu yang lalu, saya pernah membahas bagaimana membuat virtual host di XAMPP. Kali ini, saya akan membahas bagaimana membuat virtual host di IIS. Fungsinya sama dengan virtual host di XAMPP, yaitu untuk memasang beberapa website sekaligus di satu server, tapi dengan nama domain yang berbeda untuk setiap website.

Pada pembahasan kali ini, spesifikasi yang saya gunakan adalah: 

  • Windows 7.
  • IIS 7.5 (petunjuk instalasinya bisa dilihat di sini).
  • Praktik di localhost, bukan di jaringan. Tapi nanti akan saya beri penjelasan untuk implementasi di jaringan.
Diasumsikan bahwa saya ingin memasang dua website, yang pertama dengan domain http://abc.com, dan yang kedua dengan domain http://def.com. Direktori kedua website ini saya letakkan di D:websites. Sebenarnya domain website boleh menggunakan nama apa saja, asal bersifat unik, dan peletakan direktori website boleh dimana saja.

1. Mendaftarkan Website di IIS

Langkah pertama yang perlu kita lakukan adalah mendaftarkan website kita di IIS.

  1. Buka Run -> inetmgr.
  2. Expand nama server di sebelah kiri.
  3. Pilih Sites.
Nah, akan keluar nama-nama website yang telah terdaftar di IIS. Secara default, ada sebuah Default web site yang terdaftar disitu. Kita tinggal daftarkan website http://abc.com, dan http://def.com.
Pertama, kita akan daftarkan website abc.
  1. Klik Add Web Site… di pojok kanan atas.
  2. Akan muncul window Add Web Site.
  3. Isi Site Name dengan abc, Physical Path dengan direktori website, Type dengan http (atau https kalau mau menggunakan koneksi SSL), IP Address dengan All Unassigned, Port 80 untuk http dan 443 untuk https, Host name diisi dengan abc.com.
  4. Klik OK.
Lakukan hal yang sama untuk website def, atau website lainnya.

2. Modifikasi Host Name Resolution 

Di bagian ini, kita akan mengarahkan client request ke server yang tepat. Jadi misalnya ketika client mengetikkan http://abc.com di browser, maka akan diarahkan ke server dimana website abc diletakkan.

Kalau dalam lingkungan jaringan, proses ini dilakukan di DNS server. Atau bagi anda yang punya domain sendiri di internet, langkah ini dilakukan dalam Domain Control Panel.

Nah, karena telah saya jelaskan bahwa kita menggunakan localhost, maka modifikasi host name resolution ini dilakukan di file hosts. File ini bisa ditemukan di C:WindowsSystem32driversetc.

  1. Buka file hosts dengan menggunaka notepad, atau text editor yang lain.
  2. Di bagian bawah sendiri, tambahkan 127.0.0.1 abc.com. Tambahkan juga 127.0.0.1 def.com.
  3. Save.
# localhost name resolution is handled within DNS itself.
	127.0.0.1       localhost
	::1             localhost
	127.0.0.1		abc.com
	127.0.0.1		def.com

127.0.0.1 adalah IP address loopback yang mengarah kembali ke komputer yang bersangkutan. Karena websitenya diletakkan di komputer lokal, maka arah aksesnya juga kembali ke ‘diri sendiri’.

Jika ada masalah sewaktu menyimpan, itu karena masalah permission. Ulangi dari langkah pertama dengan membuka text editor sebagai Administrator. Caranya, buka Start -> ketikkan Notepad (atau nama text editor lainnya) -> tekan Ctrl+Shift+Enter -> Klik YES. Kemudian open file hosts di Notepad tersebut.

Jika praktik ini dilakukan di jaringan, maka arahkan abc.com dan def.com atau website lain ke IP address server tempat meletakkan website abc dan def.

3. Test Drive

Jika semua langkah diatas telah diikuti dengan benar, maka ketika kita ketikkan abc.com atau def.com, maka website kita yang ada di direktori yang telah kita tentukan pada saat mendaftarkan website di IIS akan terbuka, dimana pada praktik kali ini, direktori yang saya gunakan adalah D:websites.

Lalu sebenarnya apa sih kegunaan menggunakan multiple site dengan domain sendiri ini?

Banyak sih kegunaannya. Kalau di sebuah perusahaan, ingin membangun intranet dengan beberapa aplikasi web, maka nggak perlu menggunakan beberapa server untuk beberapa aplikasi website dengan domain yang berbeda. Cukup satu atau dua web server, dan satu DNS server.

Kalau di localhost, bisa digunakan untuk mendevelop website yang memiliki URL absolut, sebelum meng-upload-nya ke server yang sebenarnya. CMS seperti WordPress dan Joomla! adalah dua dari banyak aplikasi website yang menggunakan URL absolut. Dengan menyimulasikan seperti sedang menggunakan URL yang asli sungguhan saat mendevelop CMS di localhost, maka tidak akan ada masalah saat melakukan upload nantinya.

Sekian, semoga bermanfaat… 🙂