Menu Close

Berita & Acara

Mengenal Virtual Host: Pengertian dan Cara Konfigurasi

virtual host
Share on facebook
Share on twitter
Share on linkedin
Share on whatsapp

Table of Contents

Virtual host adalah metode untuk menghosting beberapa nama domain (dengan penanganan terpisah untuk setiap nama) pada satu server (atau kumpulan server). Virtual host ini memungkinkan satu server untuk berbagi sumber dayanya, seperti siklus memori dan prosesor, tanpa mengharuskan semua layanan yang disediakan untuk menggunakan nama host yang sama.

Istilah virtual host biasanya digunakan untuk merujuk ke server web tetapi prinsipnya memang terbawa ke layanan cloud. Untuk penjelasan lebih lengkapnya, mari simak di bawah ini!

Apa Itu Virtual Host?

Seperti yang sudah dijelaskan di atas, virtual host adalah metode untuk menambahkan beberapa domain dalam satu server yang sama. Ini berarti Anda dapat membuat beberapa situs web sekaligus dengan domain berbeda di server yang sama.

Sumber daya server seperti siklus memori, prosesor, dan lain sebagainya, dapat dibagikan untuk setiap virtual host yang dijalankan. Oleh karena itu, virtual host tidak memerlukan sumber daya tambahan, membuatnya lebih hemat dari segi biaya.

Contoh Virtual Host

Saat ingin membuat konfigurasi virtual host, Anda harus memasukkan script virtual host di sisi web server yang digunakan. Berikut ini contoh script konfigurasi pada cloudeka.co.id dengan akses menggunakan port 8090.

ServerAdmin admin@cloudeka.co.id 
ServerName cloudeka.co.id
ServerAlias www.cloudeka.co.id 
DocumentRoot /var/www/cloudeka.co.id/publik-folder
ErrorLog ${APACHE_LOG_DIR}/error.log 
CustomLog ${APACHE_LOG_DIR}/access.log combined

Tipe-Tipe Virtual Host

Ada tiga jenis konfigurasi yang dapat dilakukan di virtual host, antara lain:

1. IP Based Virtual Hosts

Pada jenis ini, virtual host menggunkan alamat IP yang unik di setiap situs yang dihostingnya.Setiap situs web menggunakan alamat IP (IP address) yang berbeda.

2. Port Based Virtual Hosts

Jenis ini merupakan teknik hosting web yang memungkinkan beberapa situs web dihosting pada satu server menggunakan port yang berbeda. Dengan kata lain, setiap situs web menggunakan alamat IP yang sama tetapi pada port yang berbeda.

3. Name Based Virtual Hosts

Setiap situs web menggunakan alamat IP yang sama dengan nama host yang berbeda. Jenis ini merupakan pendekatan virtual hosting yang sangat populer saat ini.

Baca juga: Apa Itu Server dan Seberapa Penting Peranannya?

Bagaimana Cara Membuat Virtual Host?

Untuk membuat sebuah virtual host, salah satu aplikasi yang dapat digunakan adalah Apache. Maka dari itu, hal pertama yang harus Anda lakukan untuk membuat virtual host adalah melakukan pemasangan aplikasi Apache terlebih dahulu.

Jika aplikasi apache sudah terpasang, selanjutnya Anda dapat mengikuti langkah-langkah di bawah ini untuk melakukan konfigurasi virtual host.

1. Membuat Direktori Baru

Langkah pertama dalam pembuatan virtual host menggunakan Apache adalah membuat struktur direktori server yang baru. Struktur direktori ini yang nantinya akan digunakan untuk menyimpan semua data dan informasi dari situs web tersebut. Pada Apache, lokasi penyimpanan data dan informasi pada sebuah situs web berada dalam direktori /var/www/html.

Untuk membuat direktori baru, pertama-tama Anda harus membuat folder baru bernama public_html pada direktori /var/www/html yang akan digunakan untuk menyimpan data dan informasi dari masing-masing domain. Selanjutnya, jalankan perintah berikut ini untuk membuat folder pada direktori tersebut:

# sudo mkdir -p /var/www/html/public_html

Baca juga: Apa Itu Database? Apakah Penting Untuk Website?

2. Membuka Permissions Folder

Untuk dapat memodifikasi berkas di direktori yang telah dibuat, Anda perlu mengubah permissions, atau izin pengaksesan, yang masih dimiliki oleh user root. Tujuan dari pembukaan akses ini adalah agar pengguna biasa dapat mengubah berkas yang ada di dalam direktori /var/www/html/.

Anda dapat menjalankan perintah berikut ini untuk mengubah izin pengaksesan di dalam folder tersebut:

sudo chown -R $USER:$USER /var/www/html/public_html

Setelah tombol Enter ditekan, nilai dari pengguna yang sedang aktif akan diambil oleh variabel $USER.

Setelah Anda melakukan hal di atas, sekarang Anda sudah bisa menambah atau mengubah berkas yang ada di dalam direktori /var/www/html.

3. Membuat Halaman Demo Untuk Percobaan

Tahap selanjutnya adalah membuat halaman demo HTML untuk melakukan percobaan virtual host baru. Pada direktori public_html, jalankan perintah berikut ini:

# cd /var/www/html/public_html

Buat berkas bernama index.html pada direktori yang sama dengan menggunakan perintah:

# touch index.html

Lalu, buka berkas tersebut dengan perintah:

# nano index.html

Kemudian, pada berkas tersebut, salin kode berikut ini:

<!DOCTYPE html>
<html>
  <body>
    <h1>Asik!</h1>
    <p>Testing Virtual Host Sukses</p>
  </body>
</html>

Simpan perubahan berkas dengan menekan tombol Ctrl + X > Y > ENTER pada keyboard Anda.

4. Membuat Berkas Virtual Host Baru

Setelah percobaan berhasil, selanjutnya Anda perlu membuat berkas host baru di dalam web server Apache. Akan ada berkas virtual host bawaan yang bernama 000-default.conf. Untuk membuat berkas baru, salin berkas tersebut dengan menjalankan perintah:

sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/website-1.conf

Setelah perintah tersebut dijalankan, berkas baru bernama website-1.conf. Berkas tersebut adalah salinan dari berkas 000-default.conf.

Selanjutnya, buka berkas website-1.conf tersebut dengan menggunakan perintah di bawah ini:

nano /etc/apache2/sites-available/website-1.conf

Pada berkas ini, Anda akan dapat mengatur dan menambah beberapa kode baru sesuai dengan yang domain butuhkan.

Baca juga: Cara Membuat Website untuk Pemula

Hapus semua baris text yang memiliki tanda # agar berkas tersebut terlihat lebih rapi. Teks yang menggunakan tanda tersebut hanya merupakan text yang berisi informasi mengenai cara penggunaan berkas tersebut. Selanjutnya, ubah baris kode ServerAdmin menjadi email yang dipakai oleh administrator. Sebagai contoh:

ServerAdmin adminCloudeka@website-1.com

Kemudian, dibawah baris kode ServerAdmin, tambahkan dua baris kode berikut ini:

ServerName DomainAnda.com
ServerAlias www.DomainAnda.com

Fungsi dari ServerName adalah untuk memberikan informasi mengenai domain yang akan menggunakan virtual host ini. Sedangkan fungsi dari ServerAlias adalah untuk menentukan alamat lain yang ingin menggunakan virtual host ini.

Terakhir, atur DocumentRoot virtual host agar dapat bekerja di dalam direktori public_html yang telah dibuat sebelumnya dengan perintah di bawah ini:

DocumentRoot /var/www/html/public_html

Berikut ini adalah hasil akhir dari berkas website-1.conf.

<VirtualHost *:80>
    ServerAdmin admin@website-1.com
    ServerName DomainAnda.com
    ServerAlias www.DomainAnda.com
    DocumentRoot /var/www/html/public_html
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Tekan tombol Ctrl + X > Y > Enter pada keyboard Anda untuk menyimpan perubahan yang telah dibuat.

Anda bisa langsung menyalin script tersebut ke dalam berkas virtual host baru Anda. Pastikan email dan domain sesuai agar berjalan lancar.

5. Mengaktifkan Virtual Host Baru

Setelah Anda berhasil membuat berkas virtual host baru, selanjutnya Anda perlu mengaktifkan virtual host tersebut dengan menggunakan perintah di bawah ini:

sudo a2ensite website-1.conf

Lalu, Anda perlu menonaktifkan konfigurasi bawaan Apache yang berada pada berkas 000-default.conf dengan perintah berikut ini:

sudo a2dissite 000-default.conf

Selanjutnya, Anda perlu memulai ulang Apache untuk menerapkan konfigurasi yang baru dengan menjalankan perintah di bawah ini:

sudo systemctl restart apach e2

Jika sudah, selanjutnya Anda hanya perlu mengakses domain yang ditulis di sebelah ServerName untuk mengecek apakah virtual host berhasil dibuat atau tidak. Jika virtual host menampilkan tulisan, “Asik! Testing Virtual Host Sukses”, maka artinya virtual host telah berhasil dibuat.

Multi-tenancy pada Virtual Host

Ada banyak penyedia komputasi cloud yang memungkinkan sistem multi-tenancy di mana setiap tenant dapat berbagi sumber daya komputasi dengan satu sama lainnya. Multi-tenant dalam komputasi cloud juga dapat menyediakan kumpulan sumber daya yang lebih besar untuk sekelompok pengguna yang lebih besar tanpa memperlambat aplikasi serta mengorbankan privasi dan keamanan.

Jika sudah membuat virtual host, Anda dapat menggunakan Deka Flexi (FX2) dari Cloudeka untuk menunjang media penyimpanan dari situs web tersebut. Semoga penjelasan mengenai virtual host ini dapat membantu, ya!

Cloudeka adalah penyedia layanan Cloud yang berdiri sejak tahun 2011. Lahir dari perusahaan ICT ternama di tanah air, Lintasarta, menyediakan layanan Cloud baik untuk perusahaan besar maupun kecil-menengah.