Nginx adalah HTTP sumber terbuka, berkinerja tinggi, dan server proxy terbalik yang mendukung beberapa situs terbesar di Internet.
Nginx dapat digunakan sebagai server web mandiri, dan sebagai proxy terbalik untuk Apache dan server web lainnya.
Dibandingkan dengan Apache, Nginx dapat menangani sejumlah besar koneksi bersamaan dan memiliki jejak memori yang lebih kecil per koneksi.
Tutorial ini akan menjelaskan langkah-langkah untuk menginstal dan mengelola Nginx pada mesin Debian.
Prasyarat #
Sebelum memulai tutorial, pastikan Anda masuk sebagai pengguna dengan hak istimewa sudo.
Instal Nginx #
Instalasi cukup mudah. Ikuti langkah-langkah di bawah ini untuk menginstal Nginx di sistem Debian Anda:
-
Perbarui indeks paket:
sudo apt update
-
Instal paket Nginx:
sudo apt install nginx
-
Layanan Nginx akan otomatis dimulai setelah proses instalasi selesai. Anda dapat memverifikasinya dengan menjalankan
curl
berikut perintah:curl -I 127.0.0.1
HTTP/1.1 200 OK Server: nginx/1.10.3 Date: Mon, 27 Aug 2018 22:29:02 GMT Content-Type: text/html Content-Length: 612 Last-Modified: Mon, 27 Aug 2018 22:27:54 GMT Connection: keep-alive ETag: "5b847aea-264" Accept-Ranges: bytes
Sesuaikan Firewall #
Jika Anda menggunakan iptables untuk memfilter koneksi ke sistem Anda, Anda harus membuka HTTP (80
) dan HTTPS (443
) port.
Buka port yang diperlukan dengan mengeluarkan perintah berikut:
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
Kelola layanan Nginx dengan systemctl #
Anda dapat menggunakan systemctl
perintah untuk mengelola layanan Nginx, sama seperti unit systemd lainnya.
Untuk menghentikan layanan Nginx, jalankan:
sudo systemctl stop nginx
Untuk memulainya lagi, ketik:
sudo systemctl start nginx
Untuk memulai ulang layanan Nginx:
sudo systemctl restart nginx
Muat ulang layanan Nginx setelah Anda membuat beberapa perubahan konfigurasi:
sudo systemctl reload nginx
Nonaktifkan layanan Nginx untuk memulai saat boot:
sudo systemctl disable nginx
Dan untuk mengaktifkannya kembali:
sudo systemctl enable nginx
Struktur dan Praktik Terbaik File Konfigurasi Nginx #
- File konfigurasi Nginx disimpan di
/etc/nginx
direktori. - File konfigurasi Nginx utama adalah
/etc/nginx/nginx.conf
. - File konfigurasi blok server (vhost) disimpan di
/etc/nginx/sites-available
direktori. File konfigurasi yang ditemukan di direktori ini tidak digunakan oleh Nginx kecuali jika ditautkan ke/etc/nginx/sites-enabled
direktori. - Mengaktifkan blok server dilakukan dengan membuat symlink(pointer) dari situs file konfigurasi di
sites-available
direktori kesites-enabled
direktori. - Untuk menulis kode yang lebih mudah dipelihara, sebaiknya ikuti konvensi penamaan standar. Misalnya jika nama domain Anda adalah
mydomain.com
maka file konfigurasi harus diberi nama/etc/nginx/sites-available/mydomain.com.conf
. /etc/nginx/snippets
direktori berisi cuplikan konfigurasi yang dapat dimasukkan dalam file blok server. Jika Anda menggunakan segmen konfigurasi yang dapat diulang, Anda dapat memfaktorkan ulang segmen tersebut menjadi cuplikan dan menyertakan file cuplikan ke blok server.- File log Nginx (
access.log
danerror.log
) terletak di/var/log/nginx/
direktori. Disarankan untuk memilikiaccess
yang berbeda danerror
file log untuk setiap blok server. - Anda dapat menyetel direktori akar dokumen domain ke lokasi mana pun yang Anda inginkan. Lokasi paling umum untuk webroot meliputi:
/home/<user_name>/<site_name>
/var/www/<site_name>
/var/www/html/<site_name>
/opt/<site_name>