1. Name based
Name based virtual host menggunakan beberapa nama host untuk webserver yang
sama alamat IP. Dengan web browser yang mendukung HTTP(seperti hampir semua
sekarang lakukan), setelah tersambung ke suatu server web, browser mengirimkan alamat
yang diketik pengguna ke dalam bar alamat browser (dengan URL). Server dapat
menggunakan informasi ini untuk menentukan situs web, serta halaman, untuk menunjukkan
pengguna. Browser menentukan alamat dengan mengatur HostHTTP header dengan host
yang ditentukan oleh pengguna. Host header yang diperlukan dalam semua permintaan
HTTP. Misalnya, server dapat menerima permintaan untuk dua domain, www.site1.com dan
www.site2.com,
keduanya
menyelesaikan
ke
alamat
IP
yang
sama.
Untuk
<VirtualHost *:80>
ServerName www.websatu.com
DocumentRoot /www/web1
</VirtualHost>
<VirtualHost *:80>
ServerName www.webdua.com
DocumentRoot /www/web2
</VirtualHost>
Dengan konfigurasi seperti diatas, apache akan menjalankan 2 buah virtual host
websatu dan webdua. Request client ke URL http://www.websatu.com akan diarahkan ke
directory /www/web1 sedangkan request client ke URL http://www.webdua.com akan
diarahkan ke directory /www/web2. Untuk mode Name-based kita perlu menambahkan
konfigurasi NameVirtualHost *:80 yang fungsinya untuk mendefinisikan Name-based
virtual host dengan IP * (sembarang) pada port 80.
2. Ip Based
Di Ip based virtual hosting setiap situs (baik sebuah DNS hostname atau kelompok
yang bertindak DNS hostname sama) menunjuk ke alamat IP yang unik. Web server anda
dikonfigurasikan dengan beberapa antarmuka jaringan fisik, antarmuka jaringan virtual pada
antarmuka fisik yang sama atau beberapa alamat IP pada satu antarmuka.
Web server dapat memperoleh alamat koneksi TCP ini dimaksudkan untuk
menggunakan standar API dan menggunakan ini untuk menentukan situs web untuk
melayani. Klien tidak terlibat dalam proses ini dan karena itu (berbeda dengan nama yang
didasarkan virtual hosting) tidak ada masalah kompatibilitas.
Kekurangan dari jenis ip based adalah server memerlukan alamat IP yang berbeda
untuk setiap situs web yang berarti biaya lebih tinggi situs web hosting dan mengarah ke
alamat IP.
Contoh konfigurasi minimal Virtual Host dengan IP-based :
Listen 80
<VirtualHost 202.169.220.10>
DocumentRoot /www/web1
ServerName www.websatu.com
</VirtualHost>
<VirtualHost 202.169.220.10>
DocumentRoot /www/web2
ServerName www.webdua.com
</VirtualHost>
Dengan konfigurasi seperti diatas, apache akan menjalankan 2 buah virtual host pada
2 buah IP 202.169.220.10 dan 202.169.220.20. Request client ke IP 202.169.220.10 akan
diarahkan ke directory /www/web1 sedangkan request client ke IP 202.169.220.20 akan
diarahkan ke directory /www/web2. Konfigurasi Listen 80 akan memerintahkan apache
untuk
melayani
request
pada
port
80
(port
http).
(dikutip:
http://www.ricurves.com/networking/virtualhost/)
3. Port-based
Nomor port default untuk HTTP adalah 80. Namun, sebagian besar webservers dapat
dikonfigurasi untuk beroperasi di hampir semua nomor port, asalkan nomor port tidak
digunakan oleh program lain di server. Sebagai contoh, server mungkin host website
www.example.com. Namun, jika mereka ingin mengoperasikan situs kedua, tidak memiliki
akses ke konfigurasi nama domain untuk nama domain, dan / atau tidak memiliki alamat IP
lain yang bisa mereka gunakan untuk melayani situs dari, mereka bisa alih-alih menggunakan
nomor
port
lain,
misalnya,www.example.com:81
untuk
port
81,
atau