Sebelumnya kita telah membahas cara menginstal LEMP stack, yang merupakan kumpulan perangkat lunak umum untuk meng-host situs web dinamis, di Ubuntu 18.04 LTS. Namun, perangkat lunak dalam rilis Ubuntu LTS (dukungan jangka panjang) sering kedaluwarsa. Dalam tutorial ini, kita akan belajar cara menginstal Nginx versi terbaru di Ubuntu 18.04 dan Ubuntu 20.04. Pada saat penulisan ini, versi terbaru Nginx adalah 1.17.0, dirilis pada 21 Mei 2019. Anda dapat melihat log perubahan di sini.
Menginstal Nginx Versi Terbaru di Ubuntu 18.04, 20.04 dari Repositori Nginx Resmi
Nginx.org mengelola repositori untuk Ubuntu. Kita dapat menggunakan repositori ini untuk menginstal versi terbaru Nginx. Pertama, buat file sumber repositori untuk Nginx dengan perintah berikut. Nano adalah editor teks baris perintah.
sudo nano /etc/apt/sources.list.d/nginx.list
Tambahkan dua baris berikut dalam file.
deb [arch=amd64] http://nginx.org/packages/mainline/ubuntu/ bionic nginx deb-src http://nginx.org/packages/mainline/ubuntu/ bionic nginx
Jika Anda menggunakan Ubuntu 20.04, maka ubah bionic
untuk focal
.
deb [arch=amd64] http://nginx.org/packages/mainline/ubuntu/ disco nginx deb-src http://nginx.org/packages/mainline/ubuntu/ disco nginx
Untuk menyimpan file di editor teks Nano, tekan CTRL+O
, lalu tekan Enter
untuk mengkonfirmasi. Tekan CTRL+X
untuk keluar. Untuk memverifikasi integritas paket yang diunduh dari repositori ini, kita perlu mengimpor kunci publik Nginx menggunakan perintah di bawah ini.
wget http://nginx.org/keys/nginx_signing.key sudo apt-key add nginx_signing.key
Setelah repositori ditambahkan ke sistem Ubuntu 18.04 Anda, jalankan perintah berikut untuk memperbarui info repositori.
sudo apt update
Jika Anda telah menginstal Nginx dari repositori perangkat lunak default Ubuntu, Anda harus menghapusnya.
sudo apt remove nginx nginx-common nginx-full nginx-core
Anda juga mungkin ingin mencadangkan file konfigurasi Nginx utama /etc/nginx/nginx.conf
karena akan diganti dengan nginx.conf
yang baru file ketika nanti kita menginstal versi terbaru Nginx.
sudo cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak
File blok server Anda yang ada (alias file host virtual) akan tetap utuh. Sekarang jalankan perintah berikut untuk menginstal Nginx dari repositori nginx.org.
sudo apt install nginx
Jika manajer paket apt menanyakan apakah Anda ingin menginstal versi baru dari file /etc/nginx/nginx.conf, Anda dapat menjawab Tidak.
Setelah Nginx terinstal, uji konfigurasi Nginx.
sudo nginx -t
Jika tes berhasil, mulai Nginx.
sudo systemctl start nginx
Aktifkan autostart saat boot.
sudo systemctl enable nginx
Untuk memeriksa status Nginx, jalankan
systemctl status nginx
Keluaran:
● nginx.service - nginx - high performance web server Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled) Active: active (running) since Sun 2019-05-26 21:01:10 CST; 3s ago Docs: http://nginx.org/en/docs/ Process: 16159 ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf (code=exited, status=0/SUCCESS) Main PID: 16160 (nginx) Tasks: 2 (limit: 4915) CGroup: /system.slice/nginx.service ├─16160 nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf └─16161 nginx: worker process May 26 21:01:10 bionic.local.domain systemd[1]: Starting nginx - high performance web server... May 26 21:01:10 bionic.local.domain systemd[1]: Started nginx - high performance web server.
Untuk memeriksa versi Nginx, gunakan perintah ini:
nginx -v
Keluaran:
nginx version: nginx/1.17.0
Anda juga dapat memeriksa informasi lebih detail dengan:
nginx -V
Keluaran:
Mengatur Pengguna Proses Nginx
Paket Nginx dari repositori nginx.org mengatur nginx
sebagai pengguna proses Nginx yang dapat disimpulkan dari baris pertama /etc/nginx/nginx.conf
mengajukan. (Jika Anda memilih untuk menginstal versi baru /etc/nginx/nginx.conf
berkas.)
user nginx;
Namun, pengguna dan grup default proses PHP-FPM adalah www-data
seperti yang dapat dilihat di /etc/php/7.2/fpm/pool.d/www.conf
berkas.
user = www-data group = www-data
Jadi kita perlu mengatur www-data
sebagai pengguna proses Nginx di /etc/nginx/nginx.conf
berkas.
sudo nano /etc/nginx/nginx.conf
Ubah
user nginx;
untuk
user www-data;
Simpan dan tutup file. Kemudian muat ulang Nginx.
sudo systemctl reload nginx
Termasuk File Blok Server
Secara default, hanya file di bawah /etc/nginx/conf.d/
direktori akan disertakan. Jika Anda juga ingin menggunakan file blok server di sites-enabled
direktori, lalu pastikan baris berikut ditambahkan di http
bagian dari nginx.conf
berkas.
include /etc/nginx/conf.d/*.conf; include /etc/nginx/sites-enabled/*;
Instal Plugin Certbot Nginx
Jika sebelumnya Anda menginstal Nginx dari repositori Ubuntu, maka paket python3-certbot-nginx mungkin telah dihapus saat Anda menginstal Nginx dari repositori nginx.org. Kami perlu menginstalnya kembali agar sertifikat TLS Anda dapat diperpanjang secara otomatis seperti biasa.
sudo apt install python3-certbot-nginx
Cara Memulai Ulang Nginx Secara Otomatis
Terkadang Nginx bisa crash karena berbagai alasan. Jika Anda lebih suka membuat Nginx secara otomatis restart setelah crash, maka kita perlu mengedit unit layanan Nginx. Pertama, salin unit layanan Nginx asli ke /etc/systemd/system/
direktori.
sudo cp /lib/systemd/system/nginx.service /etc/systemd/system/nginx.service
Kemudian edit unit layanan.
sudo nano /etc/systemd/system/nginx.service
Tambahkan baris berikut di [service]
bagian.
Restart=always RestartSec=2
Seperti ini:
[Service] Type=forking PIDFile=/var/run/nginx.pid ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf ExecReload=/bin/kill -s HUP $MAINPID ExecStop=/bin/kill -s TERM $MAINPID Restart=always RestartSec=2
Ini akan membuat Nginx mencoba me-restart sendiri setiap 2 detik setelah crash. Simpan dan tutup file. Kemudian mulai ulang Nginx.
sudo systemctl restart nginx
Langkah Selanjutnya
Saya harap tutorial ini membantu Anda menginstal Nginx versi terbaru di Ubuntu 18.04 dan Ubuntu 20.04. Anda mungkin juga ingin menginstal versi terbaru server database MariaDB di Ubuntu 18.04 dan 20.04.
- Cara Menginstal MariaDB 10.5 di Ubuntu 18.04, Ubuntu 20.04
Dan jika Anda peduli dengan keamanan, Anda dapat mengatur firewall aplikasi web ModSecurity untuk melindungi situs WordPress Anda dari peretasan.
- Cara Mengatur ModSecurity dengan Nginx di Debian/Ubuntu
Seperti biasa, jika menurut Anda postingan ini bermanfaat, berlangganan newsletter gratis kami untuk mendapatkan tips dan trik baru 🙂