Cara Konfigurasi Virtual Host di Debian 10

 Assalamu'alaikum wr wb.

Hai teman-teman semua. bagaimana kabarnya hari ini ? semoga sehat selalu yaa...

Oke pada kesempatan kali ini saya akan membagikan tutorial konfigurasi virtualhost pada web server Apache di Debian 10. Sebelum lanjut ke langkah konfigurasinya akan lebih baik jika teman-teman sudah familiar dengan istilah-isitilah berikut (web server, hosting, VPS, virtual host), silahkan kalian gunakan browser untuk mencari tahu arti istilah-istilah tadi.

Virtual Host : Virtualhost adalah metode untuk meng-hosting beberapa nama domain pada satu server. Hal ini memungkinkan satu server berbagi sumber dayanya, secara siklus memori dan prosesor, tanpa mengharuskan semua layanan yang disediakan untuk menggunakan nama host yang sama - Wikipedia.

Hosting :  Hosting adalah tempat untuk menyimpan semua file dan data sehingga dapat diakses oleh semua orang melalui internet. Data tersebut bisa berupa video, gambar, email, script, aplikasi, dan database. - CNBC Indonesia.

Biasanya, satu VPS/server hanya menangani satu domain saja. Namun dengan Virtual Host kamu bisa menangani beberapa domain di dalam satu VPS/server yang sama. Jadi, Virtual Host memungkinkan satu server menjadi hosting untuk beberapa domain. Setiap domain yang dikonfigurasi akan mengarahkan pengunjung yang mengakses website ke Virtual Host directory domain tersebut. Konten yang di-deploy tidak selalu sama, bisa berbeda CMS atau pun framework.

Persiapan
Sebelum lanjut ke tahap konfigurasi virtualhost pastikan kita sudah menginstall LAMP (Linux, Apache, MariaDB dan PHP) di debian 10, jika belum silahkan diinstal terlebih dahulu. Tambahan agar web server kita bisa di panggil menggunakan domain, kita juga harus menginstall DNS Server (bind9) dan membuat sub-domain untuk virtualhost dan terakhir kita juga bisa menginstall DHCP Server untuk memudahkan pendistribusian ip address ke Client.
Service yang harus di install :
- Web Server : Apache2
- DNS Server : Bind9
- DHCP Server : isc-dhcp-server
- Databases : MariaDB
- PHP
Topologi Jaringan
Berikut ini informasi ip address dan nama domain yang saya gunakan pada tutorial kali ini :
IP Address    : 10.5.50.1 /24
Domain        : tkjwikrama.net
Vhost1         : primary.tkjwikrama.net
Vhost2         : secondary.tkjwikrama.net
Silahkan sesuaikan dengan LK dan kondisi jaringan masing-masing !!!
Selanjutnya kita masuk ke tahap konfigurasii... Cekidoott guys :v

Konfigurasi
1. Instal LAMP (Linux, Apache, MariaDB, dan PHP)
Langkah pertama kita install LAMP menggunakan perintah berikut
apt install apache2 mariadb-server php7.3 php7.3-mysql
Verifikasi apakah servicenya sudah terinstall semua menggunakan perintah : apt list nama-pkg
apt list apache2 mariadb-server php7.3
Jika berhasil terinstall akan ada tulisan [installed] disamping kanannya.

2. Buat Document Root untuk Virtual Host
Web server apache2 secara default mengggunakan /var/www/html sebagai document root-nya. Aturan default tersebut berjalan lancar untuk single site saja. Jika kita ingin menggunakan lebih dari satu domain, maka kita harus menambahkan direktori baru didalam /var/www nah kali ini kita akan membuat document root baru untuk sub-domain primary dan secondary pada direktori /var/www
Buat direktori document root baru dan direktori log error website.
mkdir -p /var/www/primary.tkjwikrama.net
mkdir -p /var/www/primary.tkjwikrama.net/log
mkdir -p /var/www/secondary.tkjwikrama.net
mkdir -p /var/www/secondary.tkjwikrama.net/log

3. Ubah ownership dan permission
ubah ownership :
chown -R root:root /var/www/primary.tkjwikrama.net/
chown -R root:root /var/www/primary.tkjwikrama.net/log
chown -R root:root /var/www/secondary.tkjwikrama.net/
chown -R root:root /var/www/secondary.tkjwikrama.net/log
ubah permission :
chmod -R 755 /var/www
verifikasi menggunakan perintah : ls -ls nama-direktori 
ls -ls /var/www/*


4. Buat konten untuk kedua virtualhost kita.
konten ini bisa berbentuk apa saja, bisa tampilan static web, website CMS seperti wordpress, mail server dan lain-lain. Disini saya buat konten index.html dengan tampilan yang berbeda, untuk mengetahui apakah pemasangan Virtual Hostnya berhasil atau tidak.
  • Konten untuk domain primary.tkjwikrama.net
vi /var/www/primary.tkjwikrama.net/index.html

masukan script html berikut :
<html>
    <head>
<title>primary.tkjwikrama.net</title>
    </head>
    <body>
<h1 align=center>Virtual Host Apache - primary.tkjwikrama.net is working!</h1>
        <marquee direction="right" align=center>This is primary.tkjwikrama.net site</marquee>
    </body>
</html>
Save dan Exit.
  • Konten untuk domain secondary.tkjwikrama.net
vi /var/www/secondary.tkjwikrama.net/index.html

masukan script html berikut :
<html>
    <head>
<title>secondary.tkjwikrama.net</title>
    </head>
    <body>
<h1 align=center>Virtual Host Apache - secondary.tkjwikrama.net is working!</h1>
        <marquee direction="right" align=center>This is secondary.tkjwikrama.net site</marquee>
    </body>
</html>
Save dan Exit.

* Vi / Vim adalah teks editor yang ringan dan powefull. Di dunia industri teman-teman akan lebih sering menemukan vim ini dibandingkan dengan nano termasuk dalam tutorial di internet juga kebanyakan menggunakan vim sebagai teks editornya, oleh karena itu kalian harus mahir dan terbiasa menggunakannya. Cari tahu lebih lanjut klik disini

5.  Ubah konfigurasi Apache
vi /etc/apache2/apache2.conf

Tambahkan scrip berikut di baris Paling Bawah
IncludeOptional sites-enabled/*.conf


6. Konfigurasi Virtual Host
Pada tahap ini kita akan membuat 2 konfigurasi virtualhost untuk domain primary.tkjwikrama.net dan secondary.tkjwikrama.net.
  • Virtualhost primary.tkjwikrama.net
vi /etc/apache2/sites-available/primary.tkjwikrama.net.conf

tambahkan script berikut :
<VirtualHost *:80>
    ServerName www.primary.tkjwikrama.net
    ServerAlias primary.tkjwikrama.net
    DocumentRoot /var/www/primary.tkjwikrama.net
    ErrorLog /var/www/primary.tkjwikrama.net/log/error.log
    CustomLog /var/www/primary.tkjwikrama.net/log/requests.log combined
</VirtualHost>
Save dan exit.
  • Virtualhost secondary.tkjwikrama.net
vi /etc/apache2/sites-available/secondary.tkjwikrama.net.conf

tambahkan script berikut :
<VirtualHost *:80>
    ServerName www.secondary.tkjwikrama.net
    ServerAlias secondary.tkjwikrama.net
    DocumentRoot /var/www/secondary.tkjwikrama.net
    ErrorLog /var/www/secondary.tkjwikrama.net/log/error.log
    CustomLog /var/www/secondary.tkjwikrama.net/log/requests.log combined
</VirtualHost>
Save dan exit.

7. Buat symlink virtual host.
Buat symbolic link (symlink) dari sites-available ke sitest-enabled, karena sites-enabled yang tambahkan ke dalam konfigurasi Apache. apa itu symlink ? klik disini
 ln -s /etc/apache2/sites-available/primary.tkjwikrama.net.conf /etc/apache2/sites-enabled/
 ln -s /etc/apache2/sites-available/secondary.tkjwikrama.net.conf /etc/apache2/sites-enabled/

8. Reload dan restart service apache2
Langkah terakhir untuk memastikan konfigurasi kita benar dan bisa berjalan dengan baik, kita lakukan reload dan restart service apache2 menggunakan perintah berikut.
systemctl reload apache2
systemctl restart apache2
systemctl status apache2
Konfigurasi selesai...

Pengujian
  • Tampilan web default

  • Pengujian virtualhost primary.tkjwikrama.net

  • Pengujian virtualhost secondary.tkjwikrama.net

Konfigurasi virtualhost berhasil... 

Simpulan
Selamat anda sudah berhasil mengkonfigurasi virtualhost pada web server apache2 di debian 10 masih banyak hal yang bisa kalian oprek dari virtualhost ini, untuk tampilan konten websitenya bisa kalian ubah sekreatif mungkin. Kita juga bisa mendeploy wordpress, mail server, game server dan lain lain di virtualhost ini. Baiklah untuk tutorial kali ini saya cukupkan sampai disiniii.. Semoga bermanfaat dan Tetap semangatt !!! 
Terima kasih
Wassalamu'alaikum Wr.Wb.
Jika ada yang ingin di tanyakan bisa ditulis di kolom komentar 😁

sumber pencerahan / rujukan...

Post a Comment

0 Comments