Cara Mengatur Blok Server Nginx (Virtual Host) di Ubuntu 20.04


Terkadang, Anda mungkin perlu menghosting lebih dari satu domain atau situs web di server web Nginx Anda. Agar hal tersebut dapat terwujud, Blok Server (Host Virtual) perlu dikonfigurasi untuk merangkum semua konfigurasi domain Anda. Blok server Nginx identik dengan file host virtual Apache dan memiliki tujuan yang sama.

Topik ini menunjukkan cara menyiapkan blok server Nginx di Ubuntu 20.04.

Prasyarat:

  • Catatan A yang ditentukan pada penyedia hosting nama domain Anda. Catatan A adalah catatan DNS yang mengarahkan nama domain ke alamat IP server Publik. Untuk panduan ini, kami akan menggunakan nama domain crazytechgeek.info untuk tujuan ilustrasi.
  • Server Nginx atau LEMP Stack diinstal pada instans Ubuntu 20.04 LTS.
  • Pengguna login dengan hak istimewa Sudo.

Setelah semua persyaratan terpenuhi, mari jelajahi cara menyiapkan blok server Nginx di Ubuntu.

Langkah 1: Buat Direktori Root Dokumen Nginx

Untuk memulai, kami akan membuat direktori terpisah untuk domain kami yang akan berisi semua pengaturan yang terkait dengan domain tersebut.

sudo mkdir -p /var/www/crazytechgeek.info/html

Selanjutnya, tetapkan kepemilikan direktori menggunakan variabel lingkungan $USER. Ini memberikan kepemilikan direktori kepada pengguna yang sedang login. Pastikan Anda login menggunakan akun pengguna biasa dan bukan sebagai root.

sudo chown -R $USER:$USER /var/www/crazytechgeek.info/html

Selanjutnya, tetapkan izin yang sesuai ke direktori, berikan semua hak kepada pengguna yang masuk (baca, tulis, dan jalankan) dan grup serta pengguna lain hanya izin membaca dan mengeksekusi.

sudo chmod -R 755 /var/www/crazytechgeek.info

Dengan izin direktori dan kepemilikan yang dikonfigurasi dengan benar, kita perlu membuat halaman web sampel untuk domain tersebut.

Langkah 2: Buat Halaman Contoh untuk Domain

Pada langkah ini, kita akan membuat file index.html untuk tujuan pengujian. File ini akan menyajikan konten yang akan ditampilkan di web browser saat domain dipanggil di browser.

sudo vim /var/www/crazytechgeek.info/html/index.html

Rekatkan konten HTML berikut.

<html>
    <head>
        <title>Welcome to your_domain!</title>
    </head>
    <body>
  <h1>Bravo! Your server block is working as expected!</h1>
    </body>
</html>

Simpan dan keluar dari file konfigurasi.

Langkah 3: Buat Blok Server Nginx di Ubuntu

Blok server Nginx terletak di direktori /etc/nginx/sites-available. Blok server Nginx default adalah /etc/nginx/sites-available/default yang menyajikan file HTML default di /var/www/html/index.nginx-debian.html .

Untuk kasus kita, kita perlu membuat blok server yang akan menyajikan konten dalam file index.html yang kita buat sebelumnya.

Jadi, buat file blok server yang ditunjukkan.

sudo vim /etc/nginx/sites-available/crazytechgeek.info

Rekatkan konten di bawah ini:

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

        root /var/www/crazytechgeek.info/html;
        index index.html index.htm index.nginx-debian.html;

        server_name crazytechgeek.info www.crazytechgeek.info;

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

		
    access_log /var/log/nginx/crazytechgeek.info.access.log;
    error_log /var/log/nginx/crazytechgeek.info.error.log;

}

Simpan dan keluar dari file.

Langkah 4: Aktifkan Blok Server Nginx di Ubuntu

Untuk mengaktifkan blok server Nginx, Anda perlu menghubungkannya ke direktori /etc/nginx/sites-enabled/ seperti yang ditunjukkan.

sudo ln -s /etc/nginx/sites-available/crazytechgeek.info /etc/nginx/sites-enabled/

Pada titik ini, kita sudah hampir selesai. Namun, sebaiknya pastikan bahwa semua konfigurasi sudah beres. Untuk melakukannya, jalankan perintah:

sudo nginx -t

Jika Anda mengikuti langkah-langkah kami dengan benar, Anda akan mendapatkan output yang ditampilkan:

Terakhir, restart Nginx agar perubahan yang dilakukan pada file konfigurasi dapat diterapkan.

sudo systemctl restart Nginx

Kemudian konfirmasikan apakah Nginx sedang berjalan dengan menjalankan perintah yang ditunjukkan:

sudo systemctl status Nginx

Langkah 5: Menguji Blok Server Nginx di Ubuntu

Untuk mengonfirmasi apakah blok server berfungsi seperti yang diharapkan dan menyajikan konten di direktori /var/www/crazytechgeek.info, buka browser web Anda dan ramban nama domain server Anda:

http://domain-name

Anda harus mendapatkan konten yang terkandung dalam file HTML di blok server Anda seperti yang ditunjukkan.

Kesimpulan

Dalam panduan ini, kami telah menunjukkan kepada Anda cara menyiapkan blok server Nginx menggunakan satu domain di Ubuntu Linux. Anda dapat mengulangi langkah yang sama untuk domain berbeda dan tetap mendapatkan hasil yang sama. Kami berharap panduan ini memberikan wawasan yang luas.