Konfigurasi Virtualhost Debian 12

Dari Dokumentasi Robie
Loncat ke navigasi Loncat ke pencarian

Virtualhost ini berguna ketika ingin membuat banyak website dalam sebuah server. Jadi kita bisa bikin banyak website hanya dalam 1 server yang sudah kita siapkan. Untuk memulai membuat virtualhost langkah-langkahnya adalah

Buat folder di /var/www/

misalkan saya akan buat dua website dengan nama robie.web1 dan hakim.web2

#mkdir /var/www/xitkj1.web1 enter

#mkdir /var/www/xitkj2.web2 enter

Buat file index.html

Buat pada file index.html pada setiap folder dengan isian

<h1>Selamat Datang di xitkj1.web1!</h1> pada file /var/www/xitkj1.web1/index.html

<h1>Selamat Datang di xitkj2.web2!</h1> pada file /var/www/xitkj2.web2/index.html

Install Bind9

#apt install bind9

Konfigurasi bind9

Masuk ke folder bind

dengan mengetikkan perintah

#cd /etc/bind/ (enter)

lalu

copy file default named.conf.local menjadi named.conf.old

dengan mengetikkan perintah

#cp named.conf.local named.conf.old (enter)

edit file named.conf.local

dengan mengetikan perintah

#nano named.conf.local (enter)

tambahkan kode berikut pada file diatas

zone "xitkj1.web1" {
        type master;
        file "/etc/bind/db.xitkj1.web1";
};

zone "xitkj2.web2" {
        type master;
        file "/etc/bind/db.xitkj2.web2";
};

zone "20.168.192.in-addr.arpa" { (sesuaikan dengan ip address di CT masing-masing)
        type master;
        file "/etc/bind/db.192";
};

Jika sudah selesai, untuk menyimpan gunakan kombinasi tombol keyboard ctrl+x, lalu tekan tombol y, terakhir tekan tombol enter.

Kemudian

copy file db.local menjadi db.xitkj1.web1

dengan mengetikkan perintah

#cp db.local db.xitkj1.web1

edit file db.xitkj1.web1

dengan mengetikkan perintah

#nano db.xitkj1.web1 (enter)

Rubah kode berikut

;
; BIND data file for local loopback interface
;
$TTL    604800
@       IN      SOA     localhost. root.localhost. (
                              2         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL
;
@       IN      NS      localhost.
@       IN      A       127.0.0.1
@       IN      AAAA    ::1

menjadi seperti ini

;
; BIND data file for local loopback interface
;
$TTL    604800

@       IN      SOA     xitkj1.web1. root.xitkj1.web1. (  

                              2         ; Serial
                         604800         ; Refresh 
                         86400         ; Retry
                       2419200         ; Expire
                         604800 )       ; Negative Cache TTL
 
;
@       IN      NS      xitkj1.web1.
@       IN      A       192.168.20.8
www     IN      A       192.168.20.8
mail    IN      A       192.168.20.8
ftp     IN      A       192.168.20.8


copy file db.local menjadi db.xitkj2.web2

dengan mengetikkan perintah

#cp db.local db.xitkj2.web2

edit file db.xitkj2.web2

dengan mengetikkan perintah

#nano db.xitkj2.web2 (enter)

Rubah kode berikut

;
; BIND data file for local loopback interface
;
$TTL    604800
@       IN      SOA     localhost. root.localhost. (
                              2         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL
;
@       IN      NS      localhost.
@       IN      A       127.0.0.1
@       IN      AAAA    ::1

menjadi seperti ini

;
; BIND data file for local loopback interface
;
$TTL    604800

@       IN      SOA     xitkj2.web2. root.xitkj2.web2. (  

                              2         ; Serial
                         604800         ; Refresh 
                         86400         ; Retry
                       2419200         ; Expire
                         604800 )       ; Negative Cache TTL
 
;
@       IN      NS      xitkj2.web2.
@       IN      A       192.168.20.8
www     IN      A       192.168.20.8
mail    IN      A       192.168.20.8
ftp     IN      A       192.168.20.8

Copy file db.255 menjadi db.192

dengan mengetikkan perintah

#cp db.255 db.192 (enter)

lalu

edit file db.192

dengan mengetikkan perintah

#nano db.192 (enter)

Rubah kode berikut

;
; BIND reverse data file for broadcast zone
;
$TTL    604800
@       IN      SOA     localhost. root.localhost. (
                              1         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL
;
@       IN      NS      localhost.

menjadi seperti ini

;
;BIND reverse data file for broadcast zone
;

$TTL    604800
@       IN      SOA     xitkj1.web1. root.xitkj1.web1. (
                              1         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL
;
@       IN      NS      xitkj1.web1.
l       IN      PTR     xitkj1.web1.

Rubah file resolv.conf

dengan mengetikkan perintah

#nano /etc/resolv.conf

rubah file berikut

nameserver 192.168.20.1
nameserver 180.250.245.142
nameserver 180.250.245.133

menjadi

nameserver 192.168.20.9 (sesuaikan dengan ip pc masing-masing)
#nameserver 180.250.245.142 
#nameserver 180.250.245.133

langkah terakhi konfigurasi lakukan

restart aplikasi bind9

dengan mengetikkan perintah

#systemctl restart bind9 (enter)

Buat file konfigurasi virtualhost

cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/xitkj1.web1.conf

cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/xitkj2.web2.conf

Edit file konfigurasi virtualhost

edit file pertama

nano /etc/apache2/sites-available/xitkj1.web1.conf

rubah pada bagian berikut

<VirtualHost *:80>

ServerName xitkj1.web1

ServerAlias xitkj1.web1

DocumentRoot /var/www/xitkj1.web1

</VirtualHost>


edit file kedua

nano /etc/apache2/sites-available/xitkj2.web2.conf

rubah pada bagian berikut

<VirtualHost *:80>

ServerName xitkj2.web2

ServerAlias xitkj2.web2

DocumentRoot /var/www/xitkj2.web2

</VirtualHost>

Aktifkan Virtualhost

untuk mengaktifkan konfigurasi silakan ketikan perintah berikut

a2ensite xitkj1.web1.conf

a2ensite xitkj2.web2.conf

Restart Apache2

systemctl restart apache2


Hasilnya jika berhasil

Hasil-virtualhost-001.png
Hasil-virtualhost-002.png