Membangun NGINX dari sumber di Debian 12, 11, atau 10 menawarkan beberapa keuntungan dan potensi kelemahan. Kompilasi dari sumber memungkinkan Anda menyesuaikan NGINX dengan modul spesifik dan pengoptimalan yang disesuaikan dengan kebutuhan Anda, memberikan kontrol lebih besar atas proses pembangunan. Cara ini juga dapat memastikan bahwa Anda memiliki fitur dan patch keamanan terbaru sebelum tersedia di repositori resmi.
Namun, ada beberapa potensi kerugian yang perlu dipertimbangkan. Membangun dari sumber memerlukan lebih banyak waktu dan usaha dibandingkan dengan menginstal paket yang telah dikompilasi sebelumnya. Hal ini juga memerlukan pemahaman yang baik tentang proses pembangunan dan ketergantungan. Selain itu, mengelola pembaruan bisa menjadi lebih rumit, karena Anda perlu mengkompilasi ulang NGINX secara manual untuk setiap versi baru.
Panduan ini akan mendemonstrasikan cara membangun NGINX dari sumber di Debian 12, 11, atau 10, mencakup langkah-langkah dan perintah yang diperlukan untuk memastikan instalasi berhasil.
Langkah 1: Perbarui dan Tingkatkan Debian
Sebelum memulai instalasi, perbarui sistem Debian Anda. Gunakan perintah ini di terminal:
sudo apt update
sudo apt upgrade
Perintah ini akan mengambil daftar pembaruan yang tersedia dan kemudian meningkatkan sistem Anda, memastikan Anda bekerja dengan perangkat lunak terbaru.
Langkah 2: Instal Dependensi yang Diperlukan
Instal paket awal yang diperlukan untuk mengkompilasi Nginx dengan perintah berikut:
sudo apt install build-essential libpcre3-dev libssl-dev zlib1g-dev libgd-dev
Langkah 3: Unduh Kode Sumber NGINX
Setelah dependensi yang diperlukan terinstal, langkah selanjutnya adalah mengunduh kode sumber NGINX. Kunjungi Situs web NGINX dan pilih versi yang paling sesuai dengan kebutuhan Anda. Anda dapat memilih versi arus utama terbaru, stabil, atau lainnya.
Gunakan perintah wget untuk mengunduh versi pilihan Anda:
wget http://nginx.org/download/nginx-x.x.x.tar.gz
Ganti xxx dengan nomor versi. Misalnya, untuk mengunduh versi arus utama terbaru, 1.25.1, gunakan yang berikut ini:
wget https://nginx.org/download/nginx-1.25.1.tar.gz
Catatan: Jangan menyalin perintah di atas; ini hanyalah sebuah contoh. Pastikan Anda mengambil tautan unduhan stabil atau jalur utama terbaru.
Langkah 4: Ekstrak Kode Sumber
Kode sumber hadir dalam tarball terkompresi. Ekstrak menggunakan perintah ini:
tar -xzvf nginx-1.25.1.tar.gz
Kemudian, navigasikan ke direktori yang baru diekstraksi:
cd nginx-1.25.1
Langkah 5: Konfigurasikan Opsi NGINX
Untuk langkah ini, atur opsi NGINX dari sumbernya. Ini berarti memilih jalur dan modul untuk build NGINX Anda. Gunakan perintah ini:
./configure --prefix=/var/www/html --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --with-pcre --lock-path=/var/lock/nginx.lock --pid-path=/var/run/nginx.pid --with-http_ssl_module --with-http_image_filter_module=dynamic --modules-path=/etc/nginx/modules --with-http_v2_module --with-http_v3_module --with-stream=dynamic --with-http_addition_module --with-http_mp4_module
Berikut arti dari opsi tersebut:
- –prefix=/var/www/html: Menetapkan direktori root untuk instalasi.
- –sbin-path=/usr/sbin/nginx: Mengatur kemana program nginx berjalan.
- –conf-path=/etc/nginx/nginx.conf: Memilih lokasi file konfigurasi NGINX utama.
- –http-log-path=/var/log/nginx/access.log dan –error-log-path=/var/log/nginx/error.log: Tentukan lokasi file log.
- –dengan-pcre: Mengaktifkan PCRE (Ekspresi Reguler yang Kompatibel dengan Perl) untuk file konfigurasi.
- –lock-path=/var/lock/nginx.lock dan –pid-path=/var/run/nginx.pid: Mengatur lokasi untuk file kunci dan pid.
- –with-http_ssl_module: Mengaktifkan modul SSL untuk koneksi web yang aman.
- –with-http_image_filter_module=dinamis: Mengaktifkan modul filter gambar.
- –modules-path=/etc/nginx/modules: Mendefinisikan ke mana perginya modul dinamis.
- –dengan-http_v2_module: Mengaktifkan modul HTTP/2.
- –with-stream=dynamic: Mengaktifkan modul aliran secara dinamis.
- –with-http_addition_module dan –with-http_mp4_module: Mengaktifkan modul tambahan dan MP4.
Jika Anda tidak ingin menggunakan modul HTTP/3, tinggalkan saja –with-http_v3_module. HTTP/3 menawarkan penjelajahan web yang lebih cepat dan andal.
Langkah 6: Instal NGINX (Kompilasi dan Bangun NGINX)
Setelah mengonfigurasi opsi untuk membangun NGINX dari sumbernya, saatnya mengkompilasi dan menginstal NGINX. Ini adalah proses dua langkah:
Pertama, itu make
perintah mengkompilasi kode sumber NGINX menggunakan opsi yang ditentukan dalam ./configure
naskah. Ini membuat biner NGINX dapat dieksekusi:
make
Kedua, itu sudo make install
perintah menginstal biner NGINX, file konfigurasi, dan file lain ke jalur awalan yang ditentukan dalam ./configure
naskah:
sudo make install
Setelah instalasi, NGINX akan ditempatkan di sbin
direktori jalur awalan.
Langkah 7: Buat Layanan NGINX Systemd
Setelah membangun dan mengkompilasi NGINX dari sumbernya, membuat proses systemd untuk mengelola layanan NGINX di sistem Anda sangatlah penting. Begini caranya:
Buat file layanan systemd baru:
sudo nano /etc/systemd/system/nginx.service
Tambahkan konten berikut ke file:
[Unit]
Description=The NGINX HTTP and reverse proxy server
After=syslog.target network-online.target remote-fs.target nss-lookup.target
Wants=network-online.target
[Service]
Type=forking
PIDFile=/var/run/nginx.pid
ExecStartPre=/usr/sbin/nginx -t
ExecStart=/usr/sbin/nginx
ExecReload=/usr/sbin/nginx -s reload
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
Muat ulang daemon systemd:
sudo systemctl daemon-reload
Mulai layanan NGINX:
sudo systemctl start nginx
Aktifkan layanan NGINX untuk memulai secara otomatis saat boot:
sudo systemctl enable nginx
Terakhir, pastikan layanan diaktifkan:
systemctl status nginx
Langkah 8: Uji NGINX
Untuk memverifikasi bahwa NGINX berjalan dengan benar, buka browser web dan navigasikan ke halaman pengujian menggunakan alamat IP host atau server lokal Anda:
http://localhost
Atau ganti localhost
dengan alamat IP server Anda.
Perintah & Tip Tambahan
Kompilasi NGINX dengan Modul Tambahan
Anda dapat meningkatkan fungsionalitas NGINX dengan mengkompilasinya dengan modul tambahan. Misalnya, untuk menggunakan modul push HTTP Nginx, gunakan flag –add-module selama konfigurasi NGINX:
./configure --add-module=/path/to/nginx-http-push-module
make
sudo make install
Kesimpulan
Dengan mengikuti langkah-langkah ini, Anda berhasil membangun dan menginstal NGINX dari sumber di sistem Debian Anda. Pendekatan ini memberi Anda fleksibilitas dan kendali lebih besar atas instalasi NGINX Anda, memungkinkan Anda menyesuaikannya dengan kebutuhan spesifik Anda. Periksa pembaruan secara teratur dan kompilasi ulang sesuai kebutuhan untuk menjaga keamanan dan kinerja. Nikmati peningkatan kemampuan dan opsi penyesuaian yang disediakan oleh pembuatan NGINX dari sumber.