Home » Ilmu Komputer » Virtual Host: Pengertian dan Cara Membuatnya

Virtual Host: Pengertian dan Cara Membuatnya

by Jeveline Karlinda
by Jeveline Karlinda

Pengertian Virtual Host

Virtual host adalah sebuah metode untuk menambahkan banyak domain atau website dalam satu server. Dengan kata lain, anda bisa membuat website yang banyak dengan domain yang berbeda-beda pula dalam satu server yang sama.

Ada 3 tipe konfigurasi virtual host, sebagai berikut:

  1. IP Based adalah setiap website memakai IP address yang berbeda-beda.
  2. Port Based adalah setiap website memakai IP address yang sama dengan Port yang berbeda-beda.
  3. Name Based adalah setiap website memakai IP address yang sama dengan Host ame yang berbeda-beda.

Dimana server  bisa membagi resourcenya (memory, processor, dll.) untuk masing-masing virtual host. Karena itulah, keunggulan dari virtual host adalah tidak membutuhkan resource tambahan sehingga dapat menghemat pengeluaran uang.

Fungsi Virtual Host

Fungsi dari virtual host sendiri adalah untuk dapat menyediakan ruang penyimpanan bagi konten digital, sehingga user dapat mengaksesnya di web browser. Oleh karena itulah, dengan memakai virtual host, anda bisa memakai beberapa domain dalam satu server VPS.

Cara Membuat Virtual Host di XAMPP Windows

Cara yang pertama membuat virtual host adalah menggunakan XAMPP Windows. Dimana cara ini anda bisa membuat virtual host di environment lokal pada sistem operasi Windows.

Untuk bisa mengakses project windows di environment lokal, anda mungkin harus memakai XAMPP yang dipakai sebagai web server.

Untuk menjalankan XAMPP sendiri, anda memerlukan untuk mengakses URL localhost/namaprojectanda di web browser untuk bisa melihat project.

Dengan memakai virtual host Windows, anda bisa mengubah nama localhost dengan nama sesuai keinginan anda. Seperti nama hostbaru.net.

Berikut ini adalah 4 cara untuk membuat virtual host XAMPP, adalah

  • Mengedit file httpd.conf di XAMPP.
  • Mengedit file https-vhosts.conf di XAMPP.
  • Mengedit file hosts di Windows.
  • Merestart XAMPP.

Berikut ini adalah panduan lengkap cara membuat virtual host XAMPP:

  • Mengedit File httpd.conf di XAMPP.

Langkah pertama adalah mengedit file httpd.conf yang ditemukan di folder C:\xampp\apache\conf. Buka file httpd.conf di text editor yang anda punyai. Pada tutorial ini, memakai aplikasi Notepad.

Jika telah terbuka, temukan section pengaturan virtual host.

Terus, anda bisa menghapus tanda (#) di baris Include conf/extra/httpd-vhosts.conf menjadi, seperti berikut:

Jika sudah dihapus, maka simpanlah perubahan dengan melakukan cara seperti tekan tombol CTRL + S di keyboard anda. Kemudian tutuplah file itu.

  • Mengedit File httpd-vhosts.conf di XAMPP

Langkah kedua adalah mengedit file httpd-vhosts.conf. Dengan cara, memasuki folder C:\xampp\apache\conf\extra, terus anda bisa membuka file httpd-vhosts.conf, seperti ini:

Lalu, anda bisa menambahkan script pada bagian akhir file, seperti berikut:

<VirtualHost *:80>

    DocumentRoot “C:/xampp/htdocs/hostbaru”

    ServerName hostbaru.net

</VirtualHost>

Terus sesuaikanlah bagian DocumentRoot di lokasi anda dalam menyimpan file website tersebut. Lalu, anda bisa mengganti bagian Server names dengan nama host baru sesuai keinginan anda.

Contoh:

Menyimpan file di C:/xampp/htdocs/hostbaru, dengan nama hostbaru.net.

Nantinya, file httpd-vhosts.conf yang dibuat akan terlihat kurang lebih.

Janganlah anda lupa menyimpan perubahan tersebut, lalu anda bisa mengklik tombol Close.

  • Mengedit File hosts di Windows

Langkah ketiga adalah mengedit File hosts di Windows. File ini adalah file Windows yang terletak di direktori C:\Windows\System32\drivers\etc.

Dalam mengedit file hosts Windows, anda memerlukan akses sebagai administrator. Maka dari itu, anda perlu membuka notepad untuk memakai akses Run as administrator terlebih dahulu sebelum anda membuka file hosts.

Lalu, pilihlah menu File > Open, terus masuklah ke direktori C:\Windows\System32\drivers\etc. Klik file Hosts, klik tombol Open biar bisa membuka file Hosts.

Saat file Hosts telah terbuka, tambah nama host baru pada bagian akhir file, seperti berikut:

Tekan tombol CTRL + S untuk menyimpan, kemudian tutup file Hosts.

  • Merestart XAMPP

Langkah terakhir dan keempat adalah merestart XAMPP. Dengan cara, mengklik tombol Start di modul Apache dan MySQL.

Lalu, buka web browser, terus akses nama host baru yang dibuat.

Cara Membuat Virtual Host di Ubuntu dan Debian Menggunakan Nginx

Cara kedua berikutnya adalah membuat virtual host di Ubuntu dan Debian dengan menggunakan Nginx yang juga disebut Server Block. Berikut ini adalah beberapa cara dan/atau langkah dalam membuat Server Block di Ubuntu dan Debian, sebagai berikut:

  1. Menginstal dan Mengaktifkan Nginx.
  2. Membuat Direktori Baru.
  3. Mengubah Permission Direktori
  4. Membuat Halaman untuk Testing Server Block.
  5. Membuat File Server Block Baru.
  6. Mengaktifkan Server Block Baru.
  7. Melakukan Testing Server Block.

Dibawah ini adalah penjelasan lengkapnya:

  • Menginstal dan Mengaktifkan Nginx

Langkah pertama adalah menginstal dan mengaktifkan Nginx. Anda bisa menginstal nya di server Ubuntu, seperti perintah berikut:

# sudo apt-get install Nginx

Tunggu sampai proses instal selesai, sebelum melangkah ke cara berikutnya.

  • Membuat Direktori Baru

Setelah selesai menginstal Nginx, anda harus membuat folder tentang data situs website.

Anda bisa menyimpannya di direktori /var/www/html. Buat folder baru dengan nama public_html di direktori tersebut, dengan perintah seperti berikut:

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

  • Mengubah Permissions Direktori

Untuk memodifikasi file pada direktori /var/www/html/, anda harus mengubah permission atau hak mengakses, dengan cara sebagai berikut:

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

Perintah tersebut, variabel $USER akan mengambil nilai dari user yang sedang aktif pada saat itu.

Terus, server yang dipakai sudah bisa dimodifikasi data dan/atau file yang ada di dalam direktori /var/www/html.

  • Membuat Halaman untuk Testing Server Block

Berikutnya, masuk ke direktori public_html untuk bisa membuat file HTML yang akan dipakai untuk halaman testing virtual host, dengan cara sebagai berikut:

# cd /var/www/html/public_html

Lalu, buat file index.html di direktori public_html, dengan cara sebagai berikut:

# touch index.html

Terus, anda bisa membuka file index.html tadi, dengan cara:

# nano index.html

Setelah itu, salin kode HTML dibawah ini pada file tersebut:

<!DOCTYPE html>

<html>

  <body>

 <h1>Selamat!!!</h1>

 <p>Pengaturan Server Block Berhasil.</p>

  </body>

</html>

Simpanlah dengan menekan tombol CTRL + X >> Y >> ENTER pada keyboard.

  • Membuat File Server Block Baru

Nginx mempunyai server block default. Buat server block dengan nama baru website-2 dengan cara menyalin file default, dengan cara:

# sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/website-2

Lalu, buka file website-2 dengan cara:

nano /etc/nginx/sites-available/website-2

Kemudian, anda akan melihat, seperti berikut:

Pertama, hapus semua baris text yang ada tanda # pada file website-2.

Lalu, tambah baris koder server name, untuk menentukan domain dan alamat yang akan dipakai pada virtual host.

server_name DomainAnda.com www.DomainAnda.com;

Atur Root server block, agar bisa bekerja dengan baik di dalam direktori public_html yang telah dibuat, seperti berikut:

Root /var/www/html/public_html

Inilah script dari hasil akhir isi file website-2, yaitu:

server {

        listen 80;

        listen [::]:80;

        root

 /var/www/html/public_html;

        index index.html index.htm index.nginx-debian.html;

        server_name DomainAnda.com www.DomainAnda.com;

        location / {

                try_files $uri

$uri/ =404;

        }

}

Lalu simpanlah.

  • Mengaktifkan Server Block Baru

Setelah selesai membuat, aktifkan server block yang baru anda buat, dengan cara:

# sudo ln -s /etc/nginx/sites-available/website-2 /etc/nginx/sites-enabled/website-2

Lalu, cek lah apakah ada eror pada syntax konfigurasi yang baru anda buat:

sudo nginx -t

sudo systemctl restart nginx

  • Melakukan Testing Server Block

Jika anda mau mengecek apakah pembuatan server block berhasil, maka anda bisa mengakses domain baru ini pada web browser anda. Jika muncul gambar seperti dibawah ini, maka berarti server block baru buatan anda berhasil dibuat.

Cara Membuat Virtual Host di Ubuntu & Debian Menggunakan Apache

Cara ketiga dan terakhir berikutnya adalah membuat virtual host di Ubuntu dan Debian dengan menggunakan Apache. Dimana anda perlu menginstal Apache pada server Ubuntu dan/atau Debian anda terlebih dahulu. Jika sudah selesai anda bisa mengikuti gara-gara seperti berikut:

  1. Membuat Direktori Baru.
  2. Memberikan Permission Folder.
  3. Membuat Halaman Demo untuk Testing.
  4. Membuat File Virtual Host Baru.
  5. Mengaktifkan Virtual Host Baru
  6. Melakukan Testing

Ikutilah gara-gara seperti berikut ini:

1. Membuat Direktori Baru

Cara pertama adalah membuat struktur direktori server. Direktori yang dibuat ini akan menjadi tempat penyimpanan data situs website yang nanti anda buat.

Penyimpanannya di Apache ada di direktori /var/www/html. Terus anda perlu membuat folder baru yaitu public_html pada direktori tadi, untuk bisa menyimpan konten masing-masing domain.

Pakailah cara sebagai berikut, untuk membuat folder baru pada direktori tadi, yaitu:

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

2. Memberikan Permissions Folder

Dalam memodifikasi file yang ada pada direktori yang baru anda buat, anda perlu mengganti permissions atau hak akses dari user root. Agar user biasa bisa mengubah file di direktori /var/www/html/.

Pakailah cara sebagai berikut untuk mengubah permissions:

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

Variabel $USER nanti akan mengambil nilai dari user yang sedang aktif saat tombol Enter ditekan.

Setelah itu, barulah anda bisa mengubah dan/atau menambah konten pada direktori /var/www/html.

3. Membuat Halaman Demo untuk Testing

Berikutnya, anda bisa lanjut membuat halaman HTML untuk menguji host baru. Dengan cara, masuk ke direktori public_html, seperti berikut:

# cd /var/www/html/public_html

Lalu buat file index.html pada direktori public_html dengan cara berikut:

# touch index.html

Selanjutnya anda bisa membuka file index.html, dengan cara berikut:

# nano index.html

Berikutnya, salin kode HTML di bawah ini ke dalam file index.html:

<!DOCTYPE html>

<html>

  <body>

 <h1>Selamat!!!</h1>

 <p>Pengaturan Virtual Host Berhasil.</p>

  </body>

</html>

Simpanlah perubahan tadi dengan menekan tombol CTRL + X >> Y >> ENTER.

4. Membuat File Virtual Host Baru.

Di cara ini, anda sudah bisa membuat file host baru di web server Apache. Apache sendiri secara default mempunyai file virtual host bernama 000-default.conf. karena itulah untuk membuat file baru, anda harus menyalin file 000-default.conf tersebut, dengan cara:

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

Cara tadi akan membuat file baru dengan nama website-1.conf.

Lalu, anda bisa membuka file website-1.conf ini, dengan cara:

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

Saat file website-1.conf sudah terbuka.

File inilah, yang akan anda atur dan tambah dengan beberapa kode baru yang sesuai dengan kebutuhan domain yang anda ingini.

Pertama, hapuslah semua baris text yang ada tanda #. Text dengan tanda ini merupakan hanya text informasi tentang cara penggunaan file tersebut.

Lalu, anda bisa mengubah bari kode ServerAdmin menjadi email anda (administrator). Contohnya admin@website-1.com, maka kodenya adalah sebagai berikut:

ServerAdmin admin@website-1.com

Selanjutnya anda bisa menambah dua baris kode dibawah baris kode ServerAdmin, yaitu:

ServerName DomainAnda.com

ServerAlias www.DomainAnda.com

ServerName memiliki kegunaan sebagai informasi domain yang akan digunakan host ini. Sedangkan ServerAlias memiliki kegunaan untuk menentukan alamat lain yang ingin dipakai virtual host, contohnya www.

Berikutnya, anda bisa mengatur DocumentRoot virtual host untuk bisa bekerja dengan baik di dalam direktori public_html yang telah anda buat.

DocumentRoot /var/www/html/public_html

Berikut ini merupakan hasil akhir dari file website-1.conf. Dimana nanti anda bisa langsung menyalin script di bawah ini untuk dimasukkan ke dalam file virtual host yang baru. Akan tetapi, perlu diingat bahwa anda perlu menyesuaikan dengan email dan domain anda.

<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>

Setelah itu simpanlah dengan menekan tombol CTRL + X >> Y >> ENTER .

  • Mengaktifkan Virtual Host Baru

Setelah file virtual host selesai dibuat, anda harus mengaktifkannya, dengan cara:

sudo a2ensite website-1.conf

Terus non aktifkan konfigurasi default Apache yang ada di file 000-default.conf dengan cara:

sudo a2dissite 000-default.conf

Terus, anda bisa merestart Apache untuk menerapkan konfigurasi baru yang dibuat anda.

sudo systemctl restart apache2

  • Melakukan Testing

Setelah tadi konfigurasi selesai, maka anda bisa mengecel apakah pembuatan virtual host anda berhasil atau tidak.

Contoh Virtual Host

Untuk membuat sesuatu konfigurasi virtual host, maka anda perlu memasukkan script pada konfigurasi webserver yang anda gunakan. Berikut ini adalah beberapa contoh tentang script konfigurasi virtual host untuk domain contohwebsite.com dan di akses di port 8090, sebagai berikut:

  1. ServerAdmin admin@contohwebsite.com.
  2. ServerName contohwebsite.com.
  3. ServerAlias www.contohwebsite.com.
  4. DocumentRoot /var/www/contohwebsite.com/publik-folder.
  5. ErrorLog ${APACHE_LOG_DIR}/error.log.
  6. CustomLog ${APACHE_LOG_DIR}/access.log combined

You may also like