Pernahkah anda mendengar kata virtual host atau vhost? Sebenarnya, apa itu virtual host dan apa manfaatnya? pada panduan ini, kami akan menjelaskan secara lebih detail apa itu virtual host atau vhost dan cara settingnya pada server apache dan xampp.
Apache merupakan salah satu webserver favorit dan banyak digunakan karena termasuk webserver yang powerful, dan mudah diintegrasikan dengan banyak platform seperti cPanel, Plesk, VestaCP, dsb.
Secara default pada webserver hanya bisa menggunakan satu domain. Maka dari itu pada webserver apache memiliki konfigurasi khusus yang bernama Virtual Host.
Pengertian virtual host
Virtual host adalah konfigurasi pada webserver yang memungkinan anda menggunakan lebih dari satu domain pada sebuah server. Dengan virtual host anda dapat membuat lebih dari satu website dengan konten yang berbeda dalam sebuah server. Pada konfigurasi virtual host terdapat beberapa tipe konfigurasi yaitu :
- IP based : Setiap website di server menggunakan IP yang berbeda-beda.
- Port based : Setiap website di server menggunakan IP yang sama, namun menggunakan port berbeda.
- Hostname based : Setiap website di server menggunakan domain atau hostname berbeda.
Salah satu contoh penerapan konfigurasi virtual host adalah pada layanan shared hosting, dimana satu server dapat digunakan untuk banyak domain.
Contoh virtual host
Untuk membuat konfigurasi virtual host, anda perlu memasukkan script virtual host pada sisi konfigurasi webserver yang digunakan. Berikut kami sertakan contoh script konfigurasi virtual host untuk domain contohwebsite.com dan untuk aksesnya menggunakan port 8090
ServerAdmin [email protected] ServerName contohwebsite.com ServerAlias www.contohwebsite.com DocumentRoot /var/www/contohwebsite.com/publik-folder ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined
Cara setting virtual host
Dalam artikel ini, kami akan memberikan cara setting virtual host untuk webserver apache di OS windows dan ubuntu, dimana kedua OS tersebut yang paling banyak digunakan.
Setting virtual host di XAMPP windows
Bagi anda pengguna OS windows, tentu tidak asing dengan aplikasi XAMPP. Aplikasi ini mempermudah anda dalam melakukan installasi webserver Apache, mysql dan PHP.
Sebelum melakukan setting virtual host, pastikan XAMPP sudah terinstall di perangkat yang digunakan. Apabila XAMPP belum terinstall, anda dapat melakukan installasinya dengan mengikuti panduan di link ini.
Kemudian edit file httpd conf yang terletak di folder xampp\apache\conf. Lalu edit pada bagian virtual host, pastikan tidak ada tanda pagar sebelum Include conf/extra/httpd-vhosts.conf.
Kemudian buat dahulu folder untuk menyimpan file website yang akan digunakan di dalam folder xampp\htdocs
Setelah itu lakukan perubahan pada file xampp/apache/conf/extra/httpd-vhosts.conf. Isikan script konfigurasi untuk virtual host berikut
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "C:/xampp/htdocs/contohdomain.com"
ServerName contohdomain.com
ServerAlias www.contohdomain.com
ErrorLog "logs/contohdomain.com-error.log"
CustomLog "logs/contohdomain.com-access.log" common
</VirtualHost>
Setelah edit selesai silahkan simpan file, dan kemudian lakukan restart apache melalui panel XAMPP dengan cara klik stop kemudian start.
Kemudian silahkan coba masukan file dengan nama index.php atau sejenisnya di dalam folder yang sudah dibuat sebelumnya. Apabila ketika mengakses domain sudah menampilkan konten yang anda buat, maka konfigurasi virtual host pada XAMPP sudah selesai.
Setting virtual host apache ubuntu
Selanjutnya, kami akan memberikan langkah untuk konfigurasi virtual host pada web server apache di OS ubuntu. Sama seperti halnya di XAMPP, pastikan sebelum konfigurasi virtual host dilakukan web server apache sudah terinstall di OS Ubuntu pada perangkat yang digunakan.
Kemudian langkah selanjutnya kita buat dahulu folder untuk penyimpanan file websitenya, kemudian letakkan file website di folder yang dibuat. Sebagai contoh kami akan membuat konfigurasi virtual host dengan nama contohwebsite.com, dan file website akan diletakkan di folder /var/www/contohwebsite.com/publik. Maka anda bisa membuat folder dengan perintah mkdir -p /var/www/contohwebsite.com/publik
Langkah selanjutnya silahkan masuk ke folder letak file konfigurasi virtual host berada, yaitu folder /etc/apache2/sites-available/. Didalam folder tersebut terdapat file dengan nama 000-default.conf.
Silahkan anda copy file tersebut di folder yang sama, kemudian berikan nama untuk file tersebut dengan nama domain, dalam panduan ini kami akan ubah dengan contohwebsite.com. Untuk mengubahnya anda dapat menggunakan perintah cp 000-default.conf contohwebsite.com
.conf.
Lalu edit file dengan perintah nano contohwebsite.com.conf dan isikan dengan script berikut
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName namadomain.com
ServerAlias www.namadomain.com
DocumentRoot /var/www/namadomain.com/public_html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Silahkan ubah namadomain.com dengan nama domain anda, dan sesuaikan document root dengan path folder yang akan digunakan untuk penyimpanan data websitenya.
Kemudian aktifkan konfigurasi virtual host yang sebelumnya sudah dibuat dengan menggunakan perintah sudo a2ensite namadomain.com.conf. Setelah itu silahkan lakukan restart apache dengan perintah service apache2 restart
.
Silahkan anda akses nama domain yang sudah dibuat, apabila sudah menampilkan data website yang sudah diletakkan sebelumnya, maka setting konfigurasi virtual host sudah selesai.
Demikian artikel tentang virtual host. Semoga dapat membantu mempermudah anda dalam melakukan konfigurasi dan pengelolaan domain pada server anda.