Nginx diucapkan engine x
adalah HTTP gratis, sumber terbuka, berperforma tinggi, dan server proxy terbalik yang bertanggung jawab untuk menangani beban 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 mengajarkan Anda cara menginstal dan mengelola Nginx di mesin CentOS 7 Anda.
Prasyarat #
Sebelum memulai tutorial, pastikan Anda masuk sebagai pengguna dengan hak istimewa sudo dan Anda tidak menjalankan Apache atau layanan lain apa pun pada port 80 atau 443.
Menginstal Nginx di CentOS #
Ikuti langkah-langkah di bawah ini untuk menginstal Nginx di server CentOS Anda:
-
Paket Nginx tersedia di repositori EPEL. Jika Anda belum menginstal repositori EPEL, Anda dapat melakukannya dengan mengetik:
sudo yum install epel-release
-
Instal Nginx dengan mengetikkan perintah yum berikut:
sudo yum install nginx
Jika ini adalah pertama kalinya Anda menginstal paket dari repositori EPEL, yum mungkin akan meminta Anda untuk mengimpor kunci EPEL GPG:
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 Importing GPG key 0x352C64E5: Userid : "Fedora EPEL (7) <[email protected]>" Fingerprint: 91e9 7d7c 4a5e 96f1 7f3e 888f 6a2f aea2 352c 64e5 Package : epel-release-7-9.noarch (@extras) From : /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 Is this ok [y/N]:
Jika demikian, ketik
y
dan tekanEnter
. -
Setelah instalasi selesai, aktifkan dan mulai layanan Nginx dengan:
sudo systemctl enable nginx
sudo systemctl start nginx
Periksa status layanan Nginx dengan perintah berikut:
sudo systemctl status nginx
Outputnya akan terlihat seperti ini:
● nginx.service - The nginx HTTP and reverse proxy server Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor preset: disabled) Active: active (running) since Mon 2018-03-12 16:12:48 UTC; 2s ago Process: 1677 ExecStart=/usr/sbin/nginx (code=exited, status=0/SUCCESS) Process: 1675 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS) Process: 1673 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (code=exited, status=0/SUCCESS) Main PID: 1680 (nginx) CGroup: /system.slice/nginx.service ├─1680 nginx: master process /usr/sbin/nginx └─1681 nginx: worker process
-
Jika server Anda dilindungi oleh firewall, Anda harus membuka kedua HTTP (
80
) dan HTTPS (443
) port.Gunakan perintah berikut untuk membuka port yang diperlukan:
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload
-
Untuk memverifikasi instalasi Nginx Anda, buka
http://YOUR_IP
di browser pilihan Anda, dan Anda akan melihat halaman selamat datang Nginx default seperti yang ditunjukkan pada gambar di bawah ini:
Kelola Layanan Nginx dengan systemctl #
Anda dapat mengelola layanan Nginx dengan cara yang sama seperti unit sistem 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
Jika Anda ingin menonaktifkan 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 #
- Semua file konfigurasi Nginx berada di
/etc/nginx/
direktori. - File konfigurasi Nginx utama adalah
/etc/nginx/nginx.conf
. - Untuk mempermudah pemeliharaan konfigurasi Nginx, disarankan untuk membuat file konfigurasi terpisah untuk setiap domain.
- File blok server Nginx baru harus diakhiri dengan
.conf
dan disimpan di/etc/nginx/conf.d
direktori. Anda dapat memiliki blok server sebanyak yang Anda butuhkan. - Adalah ide yang baik untuk mengikuti konvensi penamaan standar, misalnya jika nama domain Anda adalah
mydomain.com
maka file konfigurasi Anda harus diberi nama/etc/nginx/conf.d/mydomain.com.conf
- Jika Anda menggunakan segmen konfigurasi berulang di blok server domain Anda, sebaiknya buat direktori bernama
/etc/nginx/snippets
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>
/usr/share/nginx/html