Nginx adalah aplikasi open-source, HTTP berkinerja tinggi, dan server reverse proxy yang memberi daya pada beberapa situs besar di Internet.

Nginx dapat digunakan sebagai server web mandiri, atau di kombinasikan sebagai reverse proxy untuk Apache dan web server lainnya.

Dibandingkan dengan Apache, Nginx dapat menangani sejumlah besar koneksi secara simultan dan memiliki jejak memori yang lebih kecil per koneksi.

Tutorial ini akan menguraikan langkah-langkah untuk menginstal dan mengelola Nginx di mesin Debian.

Prasyarat

Sebelum memulai dengan tutorial, pastikan Anda masuk sebagai pengguna biasa dengan hak sudo.

Install Nginx

Instalasi cukup mudah. Ikuti langkah-langkah di bawah ini untuk menginstal Nginx di sistem Debian Anda:

  1. Perbarui indeks paket:
    sudo apt update
  2. Install paket Nginx:
    sudo apt install nginx
  3. Layanan Nginx akan otomatis dimulai setelah proses instalasi selesai. Anda dapat memverifikasinya dengan menjalankan perintah curl berikut:
    curl -I 127.0.0.1
    HTTP/1.1 200 OK
    Server: nginx/1.14.2
    Date: Tue, 16 Jul 2019 16:50:46 GMT
    Content-Type: text/html
    Content-Length: 612
    Last-Modified: Tue, 16 Jul 2019 16:50:26 GMT
    Connection: keep-alive
    ETag: "5d2e6052-264"
    Accept-Ranges: bytes

Setting Firewall untuk Nginx

Jika Anda menggunakan UFW untuk memfilter koneksi ke sistem, Anda harus membuka port HTTP (80) dan HTTPS (443) dengan aktifkan pengaturan ‘Nginx Full’.

sudo ufw allow 'Nginx Full'

Jika Anda menggunakan nftables untuk memfilter koneksi ke sistem, buka port yang diperlukan dengan menggunakan perintah berikut:

nft add rule inet filter input tcp dport {80, 443} ct state new,established counter accept

Manajemen Nginx service Dengan systemctl

Anda dapat menggunakan perintah systemctl untuk mengelola layanan Nginx, sama seperti unit systemd lainnya.

Untuk menghentikan Nginx service, ketik:

sudo systemctl stop nginx

Untuk memulai / start Nginx service, ketik:

sudo systemctl start nginx

Untuk restart / memuat ulang Nginx ketik :

sudo systemctl restart nginx

Reload Nginx service setelah Anda melakukan beberapa perubahan konfigurasi:

sudo systemctl reload nginx

Nonaktifkan Nginx untuk memulai otomatis saat boot:

sudo systemctl disable nginx

Dan untuk mengaktifkannya kembali:

sudo systemctl enable nginx

Struktur Dasar File Konfigurasi Nginx

  • File konfigurasi Nginx disimpan di direktori /etc/nginx.
  • File konfigurasi Nginx adalah /etc/nginx/nginx.conf.
  • File konfigurasi Server block (vhost) terletak dalam direktori /etc/nginx/sites-available directory. TFile-file konfigurasi yang ditemukan dalam direktori ini tidak digunakan oleh Nginx kecuali mereka ditautkan ke direktori /etc/nginx/sites-enabled.
  • Mengaktifkan blok server dilakukan dengan membuat symlink (pointer) dari situs file konfigurasi di direktori sites-available ke direktori sites-enabled.
  • Untuk lebih mudah mengelola, gunakan nama domain untuk pemberian nama konfigurasi, semisal domain beritabebas.com maka file konfigurasi dapat bernama /etc/nginx/sites-available/beritabebas.com.conf
  • Direktori /etc/nginx/snippets berisi potongan konfigurasi yang dapat dimasukkan dalam file server block. Jika Anda menggunakan segmen konfigurasi berulang, maka Anda dapat merombak segmen tersebut menjadi potongan dan menyertakan file snippet ke server block.
  • File log nginx (access.log dan error.log) terletak di direktori /var/log/nginx/. Disarankan untuk membedakan antara accessdan file error log untuk setiap server block.
  • Anda dapat mengatur direktori root dokumen domain Anda ke lokasi yang Anda inginkan. Lokasi yang paling umum untuk webroot meliputi:
    • /home/<user_name>/<nama_situs>
    • /var/www/<nama_situs>
    • /var/www/html/<nama_situs>
    • /opt/<nama_situs>

Kesimpulan

Pada poin ini, Anda telah berhasil menginstal Nginx di server Debian 10. Anda sekarang siap untuk mulai deploy aplikasi Anda dan menggunakan Nginx sebagai web server, proxy server atau reverse proxy untuk Apache.