Setelah proses install nginx selesai diperlukan set vhost di nginx agar website bisa diakses public. Konfigurasi vhost (Virtual Host) ini juga berfungsi untuk menambahkan website di VPS jika ingin memiliki website lebih dari satu dalam satu server.
Mengelola website di VPS memang berbeda dengan hosting biasa yang sudah tersedia Control Panel (cPanel). Jika anda menggunakan nginx, set Vhost di nginx adalah hal utama agar website bisa online.
Sebelum kita set vhost di nginx , tentunya web server nginx dan program pendukungnya seperti mysql / mariadb , php harus sudah terinstall. Namun jika belum bisa ikuti panduan cara install Nginx, Mysql, Php Di VPS berikut ini.
Nah jika sudah install Nginx, Mysql, Php , saatnya kita set Vhost di nginx nya. Pertama kita harus edit konfigurasi nginx .
1 ~ Edit Konfigurasi Nginx
Buka terminal di VPS, kemudian ketikkan nano /etc/nginx/nginx.conf .
Tambahkan script berikut include /etc/nginx/sites-enabled/*; di bagian # Virtual Host Configs .
Fungsinya agar konfigurasi vhost (virtual host) di sites-available dan sites-enabled dapat terbaca oleh Nginx. Cukup site-enable saja , untuk site-available nantinya dibuat symlink yang mengarah ke site-enable.
2 ~ Buat Folder Site-Enable dan Site-Available
Selanjutnya kita buat folder untuk vhostnya , ketik mkdir -p /etc/nginx/sites-available/ kemudian mkdir -p /etc/nginx/sites-enabled/
Set Permission foldernya chmod 755 /etc/nginx/sites-available/ , chmod 755 /etc/nginx/sites-enabled/
3 ~ Buat Folder Website
Setelah buat folder dan seting permission folder vhost, selanjutnya buat folder untuk website sebagai tempat file web. Bisa menggunakan folder var/www/html sebagai folder websitenya. Namun jika ingin menggunakan folder sesuai keinginan bisa buat folder seperti berikut.
Set permission foldernya chmod 755 /var/www/test_web/
4 ~ Set Domain Website di nginx
Selanjutnya kita set domain website di nginx agar bisa terhubung dengan vhostnya. Buat file baru di folder site-available . Nama file sebaiknya disamakan dengan nama domain, ketik nano /etc/nginx/sites-available/testweb.com .
Selanjutnya copy paste script berikut : , kemudian simpan dengan tekan Ctrl + O dan exit dengan Ctrl + X
server {
root /var/www/test_web; —> Bagian ini Sesuaikan dengan folder webnya
index index.php index.html index.htm index.nginx-debian.html;
server_name testweb.com www.testweb.com; —> Nama Domain web sesuaikan
location / {
try_files $uri $uri/ /index.php?q=$request_uri;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
}
location ~ /\.ht {
deny all;
}
location = /favicon.ico {
log_not_found off;
access_log off;
}
location = /robots.txt {
allow all;
log_not_found off;
access_log off;
}
location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
expires max;
log_not_found off;
}
}
5 ~ Buat Symlink
Langkah terakhir set vhost di nginx buat Symlink dari file di folder site-available ke folder site-enable , ln -s /etc/nginx/sites-available/testweb.com /etc/nginx/sites-enabled/ .
Cek konfigurasi nginx apakah ada yang error Nginx -t , jika syntax is ok berarti tidak ada eror.
Restart Nginx , Service Nginx Restart .
6 ~ Upload File Web
Setelah set vhost di nginx selesai, upload file web ke folder web yang dibuat tadi. Jika menggunakan wordpress, download wp terlebih dahulu kemudian ekstrak di folder web. Jangan lupa set owner semua file ke www-data . chown www-data:www-data /var/www/test_web/* . Kemudian akses web dari browser.
Untuk Panduan lebih jelas Cara Install WordPress di VPS Web Server Nginx , Klik link berikut