Cara Konfigurasi Nginx Server Block di CentOS 7

Server Blocks Nginx memungkinkan Anda untuk menjalankan lebih dari satu situs web pada satu server. Dengan Server Blocks, Anda dapat menentukan root dokumen situs (direktori yang berisi file situs web), membuat kebijakan keamanan terpisah untuk setiap situs, menggunakan sertifikat SSL berbeda untuk setiap situs dan banyak lagi.

Dalam tutorial ini, kami akan memberikan panduan langkah demi langkah tentang cara menyiapkan server blocks Nginx (mirip dengan” Apache Virtual Hosts) di”  CentOS 7.

Kami sarankan Anda untuk menguji setiap tutorial atau panduan yang ada di Internet di virtual machine (vmware atau virtualbox) sebelum menerapkan ke server produksi, agar tidak mengacaukan sistem yang berjalan ketika ada kesalahan.

*Prasyarat*

Pastikan Anda telah memenuhi prasyarat berikut sebelum melanjutkan dengan tutorial ini:

· Memiliki nama domain yang menunjuk ke IP server publik Anda. Dalam tutorial ini kita akan menggunakan example.com. · Nginx terinstal pada sistem CentOS Anda. · Masuk sebagai pengguna dengan hak istimewa sudo.

Dalam beberapa dokumentasi, Anda akan melihat Server Blocks dirujuk sebagai Virtual host. Virtual host adalah istilah Apache.

*Membuat Struktur Direktori*

Root dokumen adalah direktori tempat file situs web untuk nama domain disimpan dan disajikan sebagai respons terhadap permintaan. Kita dapat mengatur root dokumen ke lokasi mana pun yang kita inginkan tetapi dalam panduan ini kita akan menggunakan struktur direktori berikut:

/var/www/ “”œ””€””€ example.com “”‚” ”  “””””€””€ public_html “”œ””€””€ example2.com “”‚” ”  “””””€””€ public_html “”œ””€””€ example3.com “”‚” ”  “””””€””€ public_html

Pada dasarnya kita akan membuat direktori terpisah untuk setiap domain yang ingin kita host di dalam direktori /var/www. Dalam direktori ini, kita akan membuat direktori public_html yang akan menjadi direktori root dokumen domain dan yang akan menyimpan file situs web domain.

Mari kita mulai dengan membuat direktori root untuk domain kami example.com:

sudo mkdir -p /var/www/example.com/public_html

Untuk tujuan pengujian, kita akan membuat file index.html di dalam direktori root dokumen domain.

Buka text editor Anda dan buat file demo index.html:

sudo nano /var/www/example.com/public_html/index.html

Copy dan paste kode berikut ke dalam file :

Selamat Datang di Server CentOS

Sukses, Server CentOS Online!

Dalam panduan ini, kita menjalankan perintah sebagai user sudo dan file serta direktori yang baru dibuat dimiliki oleh user root.

Untuk menghindari masalah izin, kita dapat mengubah kepemilikan direktori root dokumen domain menjadi user Nginx (nginx):

sudo chown -R nginx: /var/www/example.com

*Membuat Server Block*

File konfigurasi server block nginx harus diakhiri dengan .conf dan disimpan di direktori /etc/nginx/conf.d.

Buka editor pilihan Anda dan buat file konfigurasi server block untuk example.com

sudo nano /etc/nginx/conf.d/example.com.conf

Anda dapat memberi nama file konfigurasi sesuka Anda, tetapi disarankan untuk menggunakan nama domain.

Salin dan tempel kode berikut ke dalam file:

server { listen 80; listen [::]:80;

root /var/www/example.com/public_html;

index index.html;

server_name example.com www.example.com;

access_log /var/log/nginx/example.com.access.log; error_log /var/log/nginx/example.com.error.log;

location / { try_files $uri $uri/ =404; } }

Simpan file dan uji konfigurasi Nginx untuk sintaks yang benar:

sudo nginx -t

Jika tidak ada kesalahan, hasilnya akan terlihat seperti ini

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful

Restart layanan Nginx agar perubahan diterapkan:

sudo systemctl restart nginx

Terakhir untuk memverifikasi server block berfungsi seperti yang diharapkan, buka http://example.com di browser pilihan Anda, dan Anda akan melihat tampilan seperti berikut :

*Kesimpulan*

Anda telah belajar cara membuat konfigurasi server block di Nginx untuk meng-host beberapa domain pada satu server CentOS. Anda dapat mengulangi langkah-langkah yang kami uraikan di atas dan membuat server block tambahan untuk semua domain Anda.

Jika Anda ingin mengamankan situs web Anda dengan sertifikat” SSL gratis Let’s Encrypt , Anda dapat memeriksa panduan berikut: Amankan Nginx dengan Let’s Encrypt di CentOS 7

Leave a Reply

Your email address will not be published.