Virtual Host Di Debian 10

 Virtual host sebagai salah satu fitur andalan Apache memungkinkan satu buah web server digunakan oleh beberapa website sekaligus. Tentu saja hal ini akan menghemat pengeluaran. Berdasarkan dokumentasi di sini, batas maksimum jumlah virtual host (website) adalah 64. Namun jumlah tersebut masih dapat ditingkatkan dengan konfigurasi virtual host dinamis.

Yang dibutuhkan

Pada tutorial ini saya menggunakan VPS f1-micro (512MB, 10 GB disk) dari Google Cloud. VPS tersebut berjalan dengan Debian 10 yang telah terpasang web server Apache2.

Langkah-langkah

Secara garis besar, pembuatan virtual host dibagi menjadi dua tahap. Tahap pertama adalah menyiapkan webroot, sedangkan tahap kedua adalah menambahkan konfigurasi.

Webroot adalah folder tempat meletakan file html, images, css, dll. Folder Webroot dapat dibuat dengan cara :

sudo mkdir -p /var/www/html/website2.example.com

Ganti website2.example.com dengan nama domain yang ingin Anda tambahkan. Langkah selanjutnya adalah mengubah kepemilikan dan permissions folder tersebut :

sudo chown -R $USER:$USER /var/www/html/website2.example.com
sudo chmod -R 755 /var/www/html/website2.example.com

Tambahkan file index.html dengan cara :

sudo nano /var/www/html/website2.example.com/index.html

Lalu isi index.html dengan :

<html>
    <head>
        <title>Website 2</title>
    </head>
    <body>
        <h1>Sukses membuat virtual host!</h1>
    </body>
</html>

Klik ctrl+x dan enter untuk menyimpan. Tahap kedua adalah membuat konfigurasi : 

sudo nano /etc/apache2/sites available/website2.example.com.conf

Isi website2.example.com.conf dengan :

<VirtualHost *:80>
    # atur email server admin
ServerAdmin admin@example.com

# atur nama domain dan alias. Alias bersifat opsional, hapus baris alias jika tidak digunakan
    ServerName website2.example.com
    ServerAlias www.website2.example.com

# arahkan ke webroot yang telah dibuat
    DocumentRoot /var/www/html/website2.example.com/

# buat error log
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Tekan ctrl + x dan enter untuk menyimpan. Aktifkan konfigurasi yang telah dibuat

sudo a2ensite website2.example.com.conf
sudo systemctl restart apache2

Akses alamat website :

Tampilan website

Konfigurasi https (opsional)

Tanda “not secure” yang muncul di browser menandakan web tersebut diakses menggunakan protokol http. Jika ingin mengaktifkan https maka ada dua hal yang harus dilakukan, pertama Anda harus membuat sertifikat terlebih dahulu. Sertifikat dapat Anda beli ke penyedia layanan. Anda juga bisa mendapatkanya secara gratis menggunakan Let’s Encrypt atau BuyPass.

Kedua, Anda perlu menambahkan konfigurasi https di Apache dengan cara :

sudo nano /etc/apache2/sites-available/website2.example.com.ssl.conf

Masukkan konfigurasi berikut :

<VirtualHost *:443>
 # arahkan ke webroot
DocumentRoot /var/www/html/website2.example.com/ 

# masukkan alamat website
ServerName website2.example.com 

# aktifkan SSLengine
SSLEngine on 

# arahkan ke lokasi file sertifikat
SSLCertificateFile /etc/letsencrypt/live/website2.example.com/fullchain.pem 
SSLCertificateKeyFile /etc/letsencrypt/live/website2.example.com/privkey.pem 
</VirtualHost>

Tekan ctrl+x dan enter untuk menyimpan. Setelah itu aktifkan konfigurasi yang telah dibuat

sudo a2ensite website2.example.com.ssl.conf
sudo systemctl restart apache2
Tampilan website yang diakses dengan http

Komentar

Postingan populer dari blog ini

Instalasi Dan Konfigurasi web server

MANAJEMEN FILE DI DEBIAN