Instalasi PHP-FPM bersama web server NGINX pada sistem operasi Ubuntu merupakan konfigurasi standar industri yang sangat efisien untuk menghosting aplikasi web modern, termasuk sistem manajemen konten seperti WordPress. NGINX bertindak sebagai web server berperforma tinggi yang menangani permintaan HTTP statis, sementara PHP-FPM (FastCGI Process Manager) memproses eksekusi skrip PHP secara asinkron untuk mengurangi penggunaan sumber daya server.
Berdasarkan dokumentasi teknis dan panduan implementasi infrastruktur server seperti yang diulas oleh penyedia layanan hosting terkemuka, proses ini melibatkan pembaruan repositori sistem, instalasi paket NGINX dan PHP-FPM versi spesifik, penyesuaian konfigurasi blok server NGINX agar dapatmeneruskan file PHP ke soket FastCGI, serta pengujian fungsionalitas server.
Persiapan dan Instalasi Paket Utama
Sebelum memulai instalasi perangkat lunak baru, pastikan daftar paket sistem operasi Ubuntu Anda berada dalam kondisi paling mutakhir. Masuk ke terminal server menggunakan hak akses administratif (sudo) dan jalankan perintah pembaruan.
sudo apt update
sudo apt upgrade -y
Setelah sistem diperbarui, langkah berikutnya adalah menginstal web server NGINX dan modul PHP-FPM yang sesuai dengan versi PHP yang diinginkan (misalnya PHP 8.1 atau versi terbaru yang tersedia di repositori Ubuntu).
sudo apt install nginx php-fpm -y
Tabel Komponen dan Status Layanan
| Komponen | Fungsi Utama | Perintah Kontrol Layanan |
|---|---|---|
| NGINX | Web server dan reverse proxy untuk menangani trafik HTTP. | sudo systemctl restart nginx |
| PHP-FPM | FastCGI Process Manager untuk memproses kode dan skrip PHP. | sudo systemctl restart php8.1-fpm (sesuaikan versi) |
Konfigurasi NGINX untuk PHP-FPM
Agar NGINX dapat meneruskan permintaan file berekstensi .php ke PHP-FPM, Anda harus menyunting berkas konfigurasi blok server (virtual host) NGINX. Buka berkas konfigurasi default menggunakan teks editor seperti nano:
sudo nano /etc/nginx/sites-available/default
Sesuaikan bagian direktif index agar memprioritaskan index.php dan aktifkan blok lokasi untuk pemrosesan FastCGI PHP dengan memastikan baris berikut tidak diberi komentar (hapus tanda pagar):
server {
listen 80;
root /var/www/html;
index index.php index.html index.htm index.nginx-debian.html;
server_name example.com;
location / {
try_files $uri $uri/ =404;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php8.1-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}
Verifikasi dan Pengujian Konfigurasi
Setelah menyimpan perubahan pada berkas konfigurasi NGINX, lakukan pengujian sintaks untuk memastikan tidak ada kesalahan pengetikan atau kesalahan parameter.
sudo nginx -t
Jika hasil pengujian menunjukkan status syntax is ok dan test is successful, muat ulang layanan NGINX untuk menerapkan perubahan secara langsung.
sudo systemctl reload nginx
Untuk menguji apakah PHP berfungsi dengan baik di bawah NGINX, buat berkas informasi PHP di direktori root web:
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php
Akses alamat http://IP_SERVER_ANDA/info.php melalui peramban web. Jika halaman informasi PHP muncul dengan lengkap, instalasi NGINX dan PHP-FPM telah berhasil dilakukan.