Virtual host adalah cara bagi mengatur banyak laman atau URL di pada satu server VPS. Manfaat virtual host yaitu menyediakan ruang penyimpanan bagi konten digital agar dapat diakses oleh user via web browser. Dengan adanya virtual host, Sahabat dapat menggunakan beberapa domain pada satu server VPS.
Pada panduan ini, kami akan membahas dua cara merancang Virtual Host di CentOS, yaitu di web server Apache dan Nginx.
Cara Membangun Virtual Host di CentOS Menggunakan Apache
Bagi strategi merancang virtual host di Apache, Sahabat dapat mengikuti panduan di bawah ini.
Langkah 1 Install Apache
Pertama-tama, sebelum Sahabat merancang virtual host di Apache, pastikan server CentOS Sahabat telah terinstall Apache. Apabila Sahabat belum menjalankan instalasi Apache, masukkan petunjuk ini bagi memulai instalasi Apache di CentOS:
# sudo yum install httpd
Tunggu hingga proses instalasi selesai.
Langkah 2 Cek Instalasi Apache
Setelah proses instalasi Apache selesai, jalankan Apache di server Sahabat dengan cara manual, berikut ini perintahnya.
# sudo systemctl start httpd
Bagi memastikan web server telah berjalan di CentOS, masukkan petunjuk berikut:
# sudo systemctl status httpd
Petunjuk di atas akan menghasilkan output seperti di gambar di bawah ini.
Selain cara di atas,, Sahabat pun dapat menjalankan pengecekan dengan cara mengakses IP server atau domain Sahabat. Setelah berhasil mengakses IP server atau domain, akan muncul tampilan default web server Apache seperti ini:
Langkah 3 Bikin Direktori Baru
Berikutnya, Sahabat perlu merancang struktur di direktori web server yang akan digunakan bagi menyimpan data situs laman.
Lokasi tempat bagi menyimpan data laman di Apache ada di pada direktori /var/www/html
. Lalu di pada direktori /var/www/html
, Sahabat perlu merancang folder public_html bagi menyimpan file dan script bagi menjalankan laman.
Berikut ini petunjuk bagi merancang direktori:
# sudo mkdir -p /var/www/html/public_html
Kemudian, bikin direktori log bagi menyimpan petunjuk file error dan aktivitas perubahan di server. Berikut perintahnya.
# sudo mkdir -p /var/www/html/log
Langkah 4 Berikan Akses Permissions
Berikutnya, bagi dapat memodifikasi file di pada direktori, Sahabat perlu mengganti akses permissions yang masih dimiliki oleh user root Dengan semacam itu, user lazim dapat mengubah file di pada direktori /var/www/html/.
Berikut yaitu petunjuk bagi memberi akses permissions:
sudo chown -R $USER:$USER /var/www/html/public_html
Variabel $USER
akan mengambil nilai dari user dikala ini yang sedang aktif dikala tombol ENTER ditekan. Sekarang ini server yang Sahabat gunakan dapat menambah atau mengubah konten yang terdapat didalam direktori /var/www/html
.
Langkah 5 Bikin Halaman Demo Bagi Virtual Host
Berikutnya, Sahabat perlu merancang halaman demo dari HTML. Manfaat halaman ini yaitu bagi kebutuhan demo laman yang akan ditambahkan di virtual host.
Masuk ke pada direktori public_html yang telah dibangun menggunakan petunjuk berikut.
# cd /var/www/html/public_html
Bikin file di direktori public_html
Di panduan ini kami menggunakan nama file index.html
Masukkan petunjuk berikut bagi merancang file:
# touch index.html
Lalu buka file index.html menggunakan petunjuk berikut.
# nano index.html
Setelah itu, salin kode HTML di bawah ini ke pada file index.html. Lalu simpan menggunakan petunjuk Ctrl+X >> Y >> ENTER.
<!DOCTYPE html>
<html>
<body>
<h1>Selamat !!!</h1>
<p>Pengaturan Virtual Host Berhasil.</p>
</body>
</html>
Langkah 6 Bikin File Virtual Host Baru
Sebelum merancang virtual host baru, Sahabat perlu merancang direktori sites-available bagi menyimpan file konfigurasi virtual host. Sahabat pun mesti merancang direktori sites-enabled yang berfungsi bagi memberikan informasi perubahan di web server Apache.
Bagi merancang kedua direktori tersebut, masukkan petunjuk berikut:
# sudo mkdir /etc/httpd/sites-available /etc/httpd/sites-enabled
Setelah menambahkan direktori sites-enabled, Sahabat perlu menambahkan kode di file httpd.conf bagi konfirmasi penambahan file sites-available dan site-enabled di Apache. Buka file httpd.conf dengan cara berikut:
# sudo nano /etc/httpd/conf/httpd.conf
Lalu salin kode berikut, dan tambahkan ke pada file httpd.conf seperti contoh di gambar di bawah ini.
IncludeOptional sites-enabled/*.conf
Kemudian, simpan file menggunakan petunjuk Ctrl+X >> Y >> ENTER.
Setelah itu, bikin file virtual host di pada direktori sites-available. Di panduan ini kami menggunakan nama file virtual host website-1.conf
. Pastikan setiap file virtual host di Apache mesti berakhiran dengan .conf. Berikut ini petunjuk bagi merancang file website-1.conf
.
sudo nano /etc/httpd/sites-available/website-1.conf
Lalu masukkan kode di bawah ini.
<VirtualHost *:80>
ServerName www.DomainAnda.me
ServerAlias DomainAnda.me
DocumentRoot /var/www/html/public_html
ErrorLog /var/www/html/log/error.log
CustomLog /var/www/html/log/requests.log combined
</VirtualHost>
Kode di atas akan memberikan informasi kepada Apache tempat Sahabat menyimpan file-file laman yang dapat ditampilkan di user. Selain itu, kode tersebut pun berfungsi memberi informasi kepada web server mengenai error dan aktivitas perubahan di virtual host.
Simpan kode di atas menggunakan petunjuk Ctrl+X >> Y >> ENTER.
Setelah merancang file virtual host, Sahabat mesti mengaktifkannya agar domain yang Sahabat tambahkan di file .conf dapat diakses. Berikut ini petunjuk yang perlu Sahabat masukkan.
sudo ln -s /etc/httpd/sites-available/website-1.conf /etc/httpd/sites-enabled/website-1.conf
Berikutnya masukkan petunjuk berikut, bagi menetapkan kebijakan web server Apache.
# sudo setsebool -P httpd_unified 1
Berikut yaitu keterangan dari kode petunjuk di atas:
- setsebool: petunjuk bagi menjalankan perubahan SELinux di nilai boolean.
- -P: petunjuk bagi memperbarui nilai boot-time.
- httpd_unified: petunjuk bagi mengkonfirmasikan kepada SELinux bahwa segala proses Apache mempunyai tipe yang sama.
Langkah 8 Cek Hasil Perubahan
Langkah terakhir yaitu restart web server Apache. Tujuannya yaitu bagi mengkonfirmasi perubahan yang telah dibangun di virtual host. Berikut ini petunjuk bagi restart Apache:
# sudo systemctl restart httpd
Bagi memastikan kesuksesan pada merancang virtual host, Sahabat dapat mengakses domain yang telah ditambahkan di pada ServerName virtual host. Apabila muncul tampilan seperti di bawah ini, artinya konfigurasi Sahabat berhasil.
Tampilan laman di atas yaitu hasil dari file index.html yang telah dibangun pada direktori public_html.
Baca Pun: Konfigurasi Awal VPS CentOS 7
Cara Membangun Server Block (Virtual Host) di Nginx
Apabila menggunakan Nginx, istilah yang digunakan yaitu server block, bukan virtual host. Namun, fungsinya sama dengan virtual host, yaitu bagi menjalankan konfigurasi apabila ingin menambahkan lebih dari satu domain pada satu server.
Terdapat delapan langkah pada merancang server block pada Nginx dan berikut ini panduannya:
Langkah 1 Install Nginx
Langkah pertama-tama pada merancang Server Block yaitu menambahkan repository ke server Sahabat menggunakan petunjuk berikut:
sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
Setelah menambahkan repository Nginx di server, langkah berikutnya yaitu install Nginx menggunakan petunjuk berikut:
# sudo yum install nginx
Langkah 2 Cek Instalasi Nginx
Kemudian, aktifkan web server Nginx di server Sahabat menggunakan petunjuk berikut:
# sudo systemctl enable nginx
Karenanya outputnya akan seperti di gambar di bawah ini.
Setelah mengaktifkan Nginx, jalankan Nginx menggunakan petunjuk berikut:
# sudo systemctl start nginx
Kemudian, buka IP server Sahabat dan akan muncul tampilan laman default Nginx seperti ini.
Langkah 3 Bikin Direktori Baru
Berikutnya, Sahabat perlu merancang struktur di direktori server yang digunakan bagi menyimpan data situs laman.
Lokasi tempat bagi menyimpan data laman di Nginx ada di pada direktori /var/www/html
. Lalu di pada direktori /var/www/html
, Sahabat perlu merancang folder public_html bagi menyimpan file dan script bagi menjalankan laman.
Berikut ini petunjuk bagi merancang direktori:
# sudo mkdir -p /var/www/html/public_html
Langkah 4 Berikan Akses Permissions
Berikutnya, bagi dapat memodifikasi file di pada direktori, Sahabat perlu mengganti akses permissions yang masih dimiliki oleh user root Dengan semacam itu, user lazim dapat mengubah file di pada direktori /var/www/html/
.
Berikut ini petunjuk bagi memberi akses permissions:
sudo chown -R $USER:$USER /var/www/html/public_html
Variabel $USER akan mengambil nilai dari user dikala ini yang sedang aktif dikala tombol ENTER ditekan. Sekarang ini server yang Sahabat gunakan dapat menambah atau mengubah konten yang terdapat didalam direktori /var/www/html
.
Langkah 5 Bikin Halaman Demo Bagi Server Block
Kemudian, Sahabat perlu merancang halaman demo dari HTML. Manfaat halaman ini yaitu bagi kebutuhan demo laman yang akan ditambahkan di Server Block.
Masuk ke pada direktori public_html yang telah dibangun menggunakan petunjuk berikut.
# cd /var/www/html/public_html
Bikin file di direktori public_html Di panduan ini kami menggunakan nama file index.html Masukkan petunjuk berikut bagi merancang file:
# touch index.html
Lalu buka file index.html menggunakan petunjuk berikut.
# nano index.html
Setelah itu, salin kode HTML di bawah ini ke pada file index.html. Lalu simpan menggunakan petunjuk Ctrl+X >> Y >> ENTER.
<!DOCTYPE html>
<html>
<body>
<h1>Selamat!!!</h1>
<p>Pengaturan Server Block Berhasil.</p>
</body>
</html>
Langkah 6 Bikin File Server Block Baru
Sebelum merancang server block baru, Sahabat perlu merancang direktori sites-available bagi menyimpan file konfigurasi server block. Sahabat pun mesti merancang direktori sites-enabled yang berfungsi bagi memberikan informasi perubahan di web server Nginx.
Bagi merancang kedua direktori tersebut, masukkan petunjuk berikut:
# sudo mkdir /etc/nginx/sites-available /etc/nginx/sites-enabled
Setelah menambahkan direktori sites-enabled, Sahabat perlu menambahkan kode di file nginx.conf bagi konfirmasi penambahan file sites-available dan site-enabled di Apache. Buka file nginx.conf dengan cara berikut:
# sudo nano /etc/nginx/nginx.conf
Lalu salin kode berikut, dan tambahkan ke pada file nginx.conf seperti contoh di gambar di bawah ini.
include /etc/nginx/sites-enabled/*.conf;server_names_hash_bucket_size 64;
Kemudian, simpan file menggunakan petunjuk Ctrl+X >> Y >> ENTER.
Berikutnya yaitu proses penyusunan server block baru di pada web server Nginx. Nginx mempunyai server block default bernama default.conf. Pengaturan default ini dapat Sahabat salin isinya bagi merancang file server block baru bagi tiap domain Sahabat.
Di panduan ini kami menggunakan nama server block website-2.conf
. Setiap file Server Block mesti berakhiran dengan .conf. Salin isi file default.conf ke pada file website-2.conf
menggunakan petunjuk berikut.
# sudo cp /etc/nginx/conf.d/default.conf /etc/nginx/sites-available/website-2.conf
Lalu buka file website-2.conf menggunakan petunjuk berikut.
nano /etc/nginx/sites-available/website-2.conf
isi dari file website-2.conf
kurang lebih seperti di gambar di bawah ini.
Di file website-2.conf
Sahabat dapat mengatur dan menambah beberapa kode baru agar sesuai dengan keperluan domain Sahabat. File website-2.conf
akan membaca segala request di port 80 (port default HTTP).
Setelah itu, Sahabat perlu menambahkan kode Server_Name yang fungsinya bagi memberikan informasi domain apa yang akan menggunakan server block ini. Kode ini pun berfungsi bagi menentukan tempat tinggal lain yang ingin menggunakan server block ini.
server_name DomainAnda.com www.DomainAnda.com;
Terakhir, Sahabat perlu mengatur Root server block agar dapat bekerja di pada direktori public_html yang telah dibangun.
Root /var/www/html/public_html
Di panduan ini kami pun akan menambahkan kode petunjuk try_files. Petunjuk ini berfungsi bagi menampilkan keterangan error 404 seandainya ada kesalahan di file atau direktori yang diinginkan tak dapat ditemukan.
Berikut ini hasil ahir dari isi file website-2.conf. Sahabat dapat menyalin file di bawah ini ke pada file server block Sahabat.
server {
listen 80;
server_name DomainAnda.com www.DomainAnda.com;
location / {
root /var/www/html/public_html;
index index.html index.htm;
try_files $uri $uri/ =404;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}
Salin kode di atas ke pada file server block yang telah Sahabat bikin. Lalu simpan menggunakan petunjuk CTRL+X >> Y >> ENTER.
Langkah 7 Aktifkan File Server Block
Setelah merancang file server block baru, Sahabat perlu mengaktifkan server block yang telah Sahabat bikin.
Gunakan petunjuk di bawah ini bagi mengaktifkan server block yang baru Sahabat bikin.
# sudo ln -s /etc/nginx/sites-available/website-2.conf /etc/nginx/sites-enabled/website-2.conf
Berikutnya, bagi menjalankan test kesalahan script yang ditulis pada file server block, Sahabat dapat menggunakan petunjuk berikut.
sudo nginx -t
Apabila output yang muncul seperti gambar di atas, tahap berikutnya Sahabat dapat menjalankan restart agar segala konfigurasi yang telah diubah dapat dipakai. Berikut petunjuk bagi me-restart Nginx.
sudo systemctl restart nginx
Langkah 8 Cek Hasil Perubahan
Terakhir, Sahabat perlu mengecek kesuksesan konfirgurasi yang telah dilakukan. Bagi melihat kesuksesan pada merancang server block, Sahabat dapat mengakses domain yang telah ditambahkan di pada Server_Name server block. Apabila muncul tampilan gambar seperti di bawah ini, artinya konfigurasi Sahabat berhasil.
Tampilan laman di atas yaitu hasil dari file index.html yang telah dibangun pada direktori public_html
.
Kesimpulan
Adanya virtual host di server dapat menolong Sahabat bagi merancang banyak laman pada satu server VPS. caranya yaitu dengan mengikuti strategi di atas.
Semoga artikel ini menolong Sahabat bagi merancang virtual host di CentOS. Apabila mempunyai pertanyaan, jangan sungkan bagi meninggalkan komentar di kolom yang terdapat di bawah ini.
Sumber https://niagahoster.co.id/