Selasa, 16 Mei 2023

INSTAL NGINX

 

Langkah 1 – Menginstal Nginx

Karena Nginx tersedia di repositori asali Ubuntu, maka kita dimungkinkan untuk menginstalnya dari repositori ini menggunakan sistem pengemasan apt.

Karena ini adalah interaksi pertama kita dengan sistem pengemasan apt pada sesi ini, kita akan memperbarui indeks pengemasan lokal agar kita memiliki akses ke daftar paket terbaru. Setelah itu, kita dapat menginstal nginx:

1.  sudo apt update

2.   

3.  sudo apt install nginx

4.   

Copy

Setelah menerima prosedur, apt akan menginstal Nginx dan segala dependensi yang diperlukan ke server Anda.

Langkah 2 – Menyesuaikan Firewall

Sebelum menguji Nginx, perangkat lunak firewall perlu disesuaikan untuk mengizinkan akses ke layanan. Nginx mendaftarkan dirinya sendiri sebagai sebagai layanan dengan ufw pada saat instalasi, yang mempermudah untuk mengizinkan akses Nginx.

Buat daftar konfigurasi aplikasi yang mana ufw mengetahui cara bekerja sama dengannya dengan mengetik:

1.  sudo ufw app list

2.   

Copy

Anda akan mendapat daftar profil aplikasi:

Output

Available applications:

  Nginx Full

  Nginx HTTP

  Nginx HTTPS

  OpenSSH

Seperti yang ditunjukkan oleh keluaran, ada tiga profil yang tersedia untuk Nginx:

·         Nginx Full: Profil ini membuka baik porta 80 (lalu lintas web normal dan tidak terenkripsi) dan porta 443 (lalu lintas terenkripsi TLS/SSL)

·         Nginx HTTP: Profil ini hanya membuka porta 80 (lalu lintas web normal dan tidak terenkripsi)

·         Nginx HTTPS: Profil ini hanya membuka porta 443 (lalu lintas terenkripsi TLS/SSL)

Anda disarankan untuk mengaktifkan profil yang paling ketat yang masih akan mengizinkan lalu lintas yang telah Anda konfigurasikan. Saat ini, kita hanya perlu mengizinkan lalu lintas pada porta 80.

Anda dapat mengaktifkan ini dengan mengetik:

1.  sudo ufw allow 'Nginx HTTP'

2.   

Copy

Anda dapat memverifikasi perubahan dengan mengetik:

1.  sudo ufw status

2.   

Copy

Keluaran akan mengindikasikan lalu lintas HTTP mana yang diizinkan:

Output

Status: active

 

To                         Action      From

--                         ------      ----

OpenSSH                    ALLOW       Anywhere                 

Nginx HTTP                 ALLOW       Anywhere                 

OpenSSH (v6)               ALLOW       Anywhere (v6)             

Nginx HTTP (v6)            ALLOW       Anywhere (v6)

Langkah 3 – Memeriksa Server Web Anda

Pada akhir proses instalasi, Ubuntu 20.04 memulai Nginx. Server web seharusnya sudah aktif dan berjalan.

Kita dapat memeriksa dengan sistem init systemd untuk memastikan layanan sedang berjalan dengan mengetik:

1.  systemctl status nginx

2.   

Copy

Output

● nginx.service - A high performance web server and a reverse proxy server

   Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)

   Active: active (running) since Fri 2020-04-20 16:08:19 UTC; 3 days ago

     Docs: man:nginx(8)

 Main PID: 2369 (nginx)

    Tasks: 2 (limit: 1153)

   Memory: 3.5M

   CGroup: /system.slice/nginx.service

           ├─2369 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;

           └─2380 nginx: worker process

Sebagaimana dikonfirmasi oleh keluaran ini, layanan telah berhasil dimulai. Namun, cara terbaik untuk menguji ini adalah dengan benar-benar meminta suatu laman dari Nginx.

Anda dapat mengakses laman landas Nginx asali untuk mengonfirmasi bahwa perangkat lunak berjalan dengan baik dengan bernavigasi ke alamat IP server Anda. Jika Anda tidak mengetahui alamat IP server Anda, Anda dapat menemukannya dengan menggunakan alat icanhazip.com, yang akan memberi Anda alamat IP publik Anda sebagaimana diterima dari lokasi lain di internet:

1.  curl -4 icanhazip.com

2.   

Copy

Saat Anda memiliki alamat IP server Anda, masukkan alamat itu ke dalam bilah alamat peramban Anda:

http://your_server_ip

Anda akan menerima laman landas Nginx asali:

 

Jika Anda berada di laman ini, server Anda berjalan dengan benar dan siap untuk dikelola.

Langkah 4 – Mengelola Proses Nginx

Karena kini server web Anda sudah aktif dan berjalan, mari kita tinjau beberapa perintah manajemen dasar.

Untuk menghentikan server web Anda, ketik:

1.  sudo systemctl stop nginx

2.   

Copy

Untuk memulai server web saat berhenti, ketik:

1.  sudo systemctl start nginx

2.   

Copy

Untuk menghentikan lalu memulai layanan lagi, ketik:

1.  sudo systemctl restart nginx

2.   

Copy

Jika Anda hanya membuat perubahan konfigurasi, Nginx seringkali dapat memuat ulang tanpa memutus koneksi. Untuk melakukan ini, ketik:

1.  sudo systemctl reload nginx

2.   

Copy

Secara asali, Nginx dikonfigurasikan untuk memulai secara otomatis saat server melakukan boot. Jika ini bukan apa yang Anda inginkan, Anda dapat menonaktifkan perilaku ini dengan mengetik:

1.  sudo systemctl disable nginx

2.   

Copy

Untuk mengaktifkan kembali layanan agar memulai saat boot, Anda dapat mengetik:

1.  sudo systemctl enable nginx

2.   

Copy

Anda kini telah mempelajari perintah manajemen dasar dan siap untuk mengonfigurasi situs untuk menjadi hos dari lebih dari satu domain.

Langkah 5 – Menyiapkan Blok Server (Disarankan)

Ketika menggunakan server web Nginx, blok server (serupa dengan hos virtual di Apache) dapat digunakan untuk mengenkapsulasi detail konfigurasi dan menjadi hos untuk lebih dari satu domain dari suatu server tunggal. Kita akan menyiapkan domain bernama your_domain, tetapi Anda harus menggantinya dengan nama domain Anda sendiri. Untuk mempelajari lebih lanjut tentang menyiapkan nama domain dengan DigitalOcean, silakan merujuk ke Pengantar DNS DigitalOcean yang kami sediakan.

Nginx pada Ubuntu 20.04 memiliki satu blok server yang diaktifkan secara asali, yang dikonfigurasi untuk menampilkan dokumen dari suatu direktori di /var/www/html. Meskipun ini berfungsi baik untuk situs tunggal, ini bisa menjadi sulit dijalankan jika Anda menjadi hos dari beberapa situs. Alih-alih memodifikasi /var/www/html, mari kita buat suatu struktur direktori di dalam /var/www untuk situs your_domain kita, dengan membiarkan /var/www/html sebagai direktori asali yang akan ditampilkan jika permintaan klien tidak cocok dengan situs lain apa pun.

Buat direktori untuk your_domain sebagai berikut, dengan menggunakan bendera -p untuk menciptakan direktori induk apa pun yang diperlukan:

1.  sudo mkdir -p /var/www/your_domain/html

2.   

Copy

Selanjutnya, tentukan kepemilikan direktori dengan variabel lingkungan $USER:

1.  sudo chown -R $USER:$USER /var/www/your_domain/html

2.   

Copy

Izin root web Anda seharusnya benar jika Anda belum mengubah nilai umask Anda, yang menetapkan izin berkas asali. Untuk memastikan izin Anda benar dan memperbolehkan pemilik untuk membaca, menulis, dan mengeksekusi berkas, sementara hanya memperbolehkan membaca dan mengeksekusi ke grup dan lainnya, Anda dapat memasukkan perintah berikut:

1.  sudo chmod -R 755 /var/www/your_domain

2.   

Copy

Selanjutnya, buat laman index.html dengan menggunakan nano atau editor favorit Anda:

1.  nano /var/www/your_domain/html/index.html

2.   

Copy

Di dalam, tambahkan HTML sampel berikut ini:

/var/www/your_domain/html/index.html

<html>

    <head>

        <title>Welcome to your_domain!</title>

    </head>

    <body>

        <h1>Success!  The your_domain server block is working!</h1>

    </body>

</html>

Copy

Simpan dan tutup berkas dengan menekan CTRL dan X lalu Y dan ENTER saat Anda selesai.

Agar Nginx menyajikan konten ini, maka diperlukan untuk menciptakan blok server dengan arahan yang benar. Alih-alih memodifikasi berkas konfigurasi asali secara langsung, mari kita buat yang baru di /etc/nginx/sites-available/your_domain:

1.  sudo nano /etc/nginx/sites-available/your_domain

2.   

Copy

Tempel di blok konfigurasi berikut, yang serupa dengan yang asali, tetapi diperbarui untuk nama domain dan direktori baru kita:

/etc/nginx/sites-available/your_domain

server {

        listen 80;

        listen [::]:80;

 

        root /var/www/your_domain/html;

        index index.html index.htm index.nginx-debian.html;

 

        server_name your_domain www.your_domain;

 

        location / {

                try_files $uri $uri/ =404;

        }

}

Copy

Perhatikan bahwa kita telah memperbarui konfigurasi root ke direktori baru kita, dan server_name ke nama domain kita.

Selanjutnya, mari kita mengaktifkan berkas dengan menciptakan tautan darinya ke direktori sites-enabled, yang dibaca Nginx selama memulai:

1.  sudo ln -s /etc/nginx/sites-available/your_domain /etc/nginx/sites-enabled/

2.   

Copy

Dua blok server sekarang telah diaktifkan dan dikonfigurasi untuk merespons permintaan berdasarkan arahan listen dan server_name (Anda dapat membaca lebih lanjut tentang cara Nginx memproses arahan ini di sini):

·         your_domain: Akan merespons permintaan untuk your_domain dan www.your_domain.

·         asali: Akan merespons permintaan apa pun pada porta 80 yang tidak cocok dengan dua blok lainnya.

Untuk menghindari masalah memori hash bucket yang dapat muncul dari penambahan nama server tambahan, maka diperlukan untuk menyesuaikan satu nilai dalam berkas /etc/nginx/nginx.conf. Buka berkas:

1.  sudo nano /etc/nginx/nginx.conf

2.   

Copy

Cari arahan server_names_hash_bucket_size dan hapus simbol # untuk menghapus komentar pada baris itu. Jika Anda menggunakan nano, Anda dapat dengan cepat mencari kata-kata di dalam berkas dengan menekan CTRL dan w.

/etc/nginx/nginx.conf

...

http {

    ...

    server_names_hash_bucket_size 64;

    ...

}

...

Simpan dan tutup berkas saat Anda sudah selesai.

Selanjutnya, uji untuk memastikan bahwa tidak ada kesalahan sintaks pada berkas Nginx Anda:

1.  sudo nginx -t

2.   

Copy

Jika tidak ada masalah apa pun, mulai kembali Nginx untuk mengaktifkan perubahan Anda:

1.  sudo systemctl restart nginx

2.   

Copy

Nginx sekarang seharusnya menyajikan nama domain Anda. Anda dapat menguji ini dengan bernavigasi ke http://your_domain, di mana Anda akan melihat sesuatu seperti ini:

 

Tidak ada komentar:

Posting Komentar

membuat web dinamis berbasis php