NGINX
Pada setiap aplikasi Web pasti menggunakan sebuah Web Server. Ada beberapa Web server seperti Apache, Apache Tomcat dan Nginx. Pada tulisan kali ini, kita akan membuat Web Server dengan menggunakan Nginx. Nginx adalah Web Server berbasis open source yang memiliki beberapa fungsi seperti proxy dan HTTP server. Nginx adalah Web Server yang bersifat Asyncronus yang dimana bisa menerima request secara bersamaan.
Virtual Host
Virtual Host berfungsi untuk mengatur Web Server agar dalam satu server bisa menjalankan banyak website atau dalam satu ip address. Misalkan suatu domain ingin ditambahkan sub domain yang berisi website yang berbeda. Cara ini dapat dilakukan di NGINX agar satu mesin atau ip address bisa menangani banyak website berbeda.
Tahap 1 – Install Nginx
Yang pertama dilakukan adalah menginstall nginx, dan kali ini saya menggunakan ubuntu. untuk perintahnya seperti ini.
sudo apt update
sudo apt install nginx
Bila nginx sudah terinstall, maka lanjutkan dengan mengaktifkan Nginx secara manual terlebih dahulu menggunakan command ini.
sudo service nginx start
Pastikan nginx nya sudah aktif dan running dengan menggunakan command ini.
sudo service nginx status
Apabila teman-teman ingin restart service nginx bisa menggunakan command ini.
sudo service nginx restart
Untuk stop service nginx dengan command ini.
sudo service nginx stop
Lanjutkan dengan melakukan test pada browser dengan membuka url http://127.0.0.1 atau http://localhost atau bisa juga menggunakan http://ip-address (gunakan ip address PC)
Tahap 2 – Konfigurasi Nginx
Edit file konfigurasi Nginx dengan perintah.
nano /etc/nginx/nginx.conf
Berikutnya tambahkan baris ini setelah include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
Tahap 3 – Membuat Directory Konfigurasi Terpisah
Membuat directory secara terpisah ini bertujuan agar membedakan 1 config nginx website dengan website yang lain. Biasanya saat install Nginx terbaru sudah dibuatkan directory ini. Jika belum ada, bisa jalankan perintah dibawah.
mkdir -p /etc/nginx/sites-available/
mkdir -p /etc/nginx/sites-enabled/
chmod 755 /etc/nginx/sites-available/
chmod 755 /etc/nginx/sites-enabled/
Tahap 4 – Membuat Directory Untuk Menyimpan Website
Buat folder atau directory untuk menyimpan file website seperti html, css atau javascript.
mkdir -p /var/www/php7.belajar.nginx/
mkdir -p /var/www/php5.belajar.nginx/
Tahap 5 – Membuat File Website
Untuk kali ini kita membuat halaman HTML sederhana saja tanpa menggunakan CSS atau javascript untuk mengetahui bahwa website yang pertama dan yg lain itu berbeda.
Website 1
Jalankan perintah.
nano /var/www/php7.belajar.nginx/index.html
Lalu isikan kode HTML seperti berikut dan save bila sudah selesai.
<html>
<head>
<title>Ini Website PHP 7</title>
</head>
<body>
Website ini akan menggunakan php 7
</body>
</html>
Website 2
Jalankan Perintah.
nano /var/www/php5.belajar.nginx/index.html
Tulis script HTML sama seperti diatas, tetapi bedakan isi body dan titlenya agar terlihat perbedaannya dan jangan lupa save dan exit.
<html>
<head>
<title>Ini Website PHP 5</title>
</head>
<body>
Website ini akan menggunakan php 5
</body>
</html>
Tahap 6 – Melakukan Konfigurasi
Buat file konfigurasi pada directory konfigurasi yang sudah dibuat pada tahap sebelumnya.
sudo nano /etc/nginx/sites-available/php7.belajar.nginx
Lalu tulis script dibawah ini dan save.
server {
listen 80;
listen [::]:80;
root /var/www/php7.belajar.nginx/;
index index.html index.htm
server_name php7.belajar.nginx
location / {
try_files $uri $uri/ =404;
}
}
Lalu buat konfigurasi untuk website yang kedua.
sudo nano /etc/nginx/sites-available/php5.belajar.nginx
Dan isinya seperti ini.
server {
listen 80;
root /var/www/php5.belajar.nginx/;
index index.html index.htm
server_name php5.belajar.net
location / {
try_files $uri $uri/ =404;
}
}
Tahap 7 – Membuat Symlink
ln -s /etc/nginx/sites-available/php7.belajar.nginx /etc/nginx/sites-enabled
ln -s /etc/nginx/sites-available/php5.belajar.nginx /etc/nginx/sites-enabled
Untuk memastikan konfigurasi yang kita buat tidak ada masalah dengan menggunakan perintah.
nginx -t
Apabila konfigurasi yang sudah disiapkan befungsi dengan baik dan tidak ada error, maka output pada terminal yang seharusnya muncul seperti ini.
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Maka bisa dilanjut untuk start nginx dengan perintah ini.
sudo service nginx start
Lalu teman-teman bisa buka browser untuk membuka url php5.belajar.nginx dan php7.belajar.nginx.
Maka yang yang tambil pada kedua domain tersebut akan berbeda kontennya seperti ini.


Sekian untuk tutorial kali ini. Terima kasih banyak sudah mampir.
