PHP-FPM adalah implementasi FastCGI untuk PHP yang meningkatkan kinerja dan skalabilitas aplikasi web PHP. Pada panduan ini, kami akan mengulas lebih dalam tentang apa itu PHP-FPM hingga cara install di Nginx.
Seperti yang telah kita ketahui bersama, PHP adalah salah satu bahasa pemrograman yang paling banyak digunakan saat ini. Bahasa pemrograman ini sering digunakan pada pengembangan web di beberapa platform besar seperti WordPress, Drupal, Magento, dan lain-lain.
Penggunaan bahasa pemrograman PHP pada lingkungan pengembang web di platform besar tidak luput dari komponen-komponen yang ada pada PHP itu sendiri. Salah satunya ialah adanya manager proses PHP yang mendukung sistem manajemen untuk memelihara situs web dan memuat halaman agar berjalan lancar yaitu berupa modul, salah satunya adalah PHP-FPM.
Sebenarnya masih ada alternatif selain PHP-FPM, seperti Suphp dan mod_php, namun pada artikel ini kami akan membahas secara detail tentang apa itu PHP-FPM di Nginx Ubuntu 20.04.
Apa itu PHP-FPM?
PHP-FPM adalah singkatan dari PHP FastCGI Process Manager, yaitu sebuah proses manajer untuk menjalankan aplikasi PHP melalui protokol FastCGI. PHP-FPM dapat membantu meningkatkan performa aplikasi PHP dengan menjalankan proses PHP sebagai sebuah daemon yang terpisah dari server web.
Dalam konfigurasi standar, PHP-FPM mengelola proses PHP secara terpisah dari web server seperti Apache atau Nginx, sehingga memungkinkan lebih banyak fleksibilitas dalam mengelola proses PHP dan meningkatkan skalabilitas aplikasi.
PHP-FPM memiliki beberapa fitur, seperti pengelolaan proses yang lebih baik, isolasi proses yang lebih baik, manajemen sumber daya yang lebih baik, kemampuan untuk membatasi jumlah koneksi, dan dukungan untuk mengaktifkan cache opcode PHP.
PHP-FPM juga memungkinkan administrator untuk mengelola aplikasi PHP dengan lebih mudah, termasuk memonitor proses PHP dan menghentikan proses PHP yang bermasalah.
Fungsi PHP-FPM
Fungsi utama dari PHP-FPM adalah untuk memproses aplikasi PHP melalui protokol FastCGI. Berikut adalah beberapa fungsi penting dari PHP-FPM:
1. Memastikan performa aplikasi PHP yang lebih cepat
PHP-FPM memungkinkan server web untuk mengelola permintaan PHP secara terpisah, sehingga mengurangi waktu yang dibutuhkan untuk memproses permintaan PHP. Selain itu, PHP-FPM memiliki fitur caching opcode yang memungkinkan aplikasi PHP untuk di-cache dan mengurangi waktu pemrosesan kode PHP.
2. Mengelola sumber daya dengan lebih efisien
PHP-FPM memungkinkan pengaturan sumber daya yang lebih baik, seperti membatasi jumlah koneksi dan membatasi jumlah memori yang digunakan oleh setiap proses PHP. Hal ini membantu mencegah kelebihan beban pada server dan memastikan aplikasi PHP dapat dijalankan dengan stabil.
3. Memudahkan manajemen aplikasi PHP
PHP-FPM memiliki antarmuka yang mudah digunakan dan memungkinkan administrator untuk mengelola proses PHP dengan lebih mudah, termasuk memantau proses dan menghentikan proses PHP yang bermasalah.
4. Meningkatkan skalabilitas aplikasi
PHP-FPM memungkinkan aplikasi PHP untuk dijalankan pada server yang terpisah, sehingga memungkinkan lebih banyak fleksibilitas dan meningkatkan skalabilitas aplikasi.
Dengan demikian, PHP-FPM merupakan komponen penting untuk memastikan performa aplikasi PHP yang cepat dan efisien, serta meningkatkan skalabilitas dan fleksibilitas aplikasi.
Cara Install PHP-FPM di Nginx
Berikut adalah cara install PHP-FPM di Nginx Ubuntu 20.04.
Step 1. Instalasi Web Server
Di panduan kali ini, kami akan melakukan instalasi PHP-FPM menggunakan web server Nginx di OS Ubuntu 20.04. Pertama, silahkan menginstal web server Nginx pada VPS ataupun server yang dimiliki. Panduan instalasi Nginx dapat dilihat dari halaman berikut.
Setelah melakukan instalasi Nginx, selanjutnya pastikan bahwa VPS Anda bisa diakses secara normal seperti screenshot berikut.

Anda juga dapat menggunakan web server Apache, LiteSpeed, atau yang lain yang Anda kuasai.
Step 2. Install PHP-FPM Nginx Ubuntu
Untuk menginstal PHP-FPM di VPS Ubuntu, Anda cukup mengetikkan perintah berikut:
sudo apt install php-fpm
Bila mengetikkan perintah di atas, maka secara default Anda akan menginstal versi PHP yang terbaru (PHP 8.2). Anda juga dapat menginstal versi PHP yang lain, seperti PHP 7.4, 8.0, atau 8.1.
Setelah PHP-FPM terinstal, Anda perlu melakukan konfigurasi pada file /etc/nginx/sites-available/default. Silahkan mengubah baris script berikut:
# Add index.php to the list if you are using PHP
index index.html index.htm index.nginx-debian.html;
menjadi
# Add index.php to the list if you are using PHP
index index.php index.html index.htm index.nginx-debian.html;
Masih pada file /etc/nginx/sites-available/default, cari baris blok berikut:
#location ~ \.php$ {
# include snippets/fastcgi-php.conf;
#
# # With php-fpm (or other unix sockets):
# fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
# # With php-cgi (or other tcp sockets):
# fastcgi_pass 127.0.0.1:9000;
#}
Lalu ubah menjadi seperti baris blok ini:
location ~ \.php$ {
include snippets/fastcgi-php.conf;
#
# # With php-fpm (or other unix sockets):
fastcgi_pass unix:/var/run/php/php8.2-fpm.sock;
# # With php-cgi (or other tcp sockets):
# fastcgi_pass 127.0.0.1:9000;
}
Pada baris script di bawah, Anda perlu menyesuaikan dengan versi PHP yang Anda instal. Misalnya, bila Anda menginstal PHP versi 7.4, maka bagian fastcgi_pass diubah menjadi:
fastcgi_pass unix:/var/run/php/php7.-fpm.sock;
Atau bila menggunakan PHP versi 8.1, maka bagian fastcgi_pass diubah menjadi:
fastcgi_pass unix:/var/run/php/php8.1-fpm.sock;
Untuk mengecek apakah konfigurasi yang dilakukan sudah benar, Anda bisa mengetikkan perintah berikut;
nginx -t
Bila hasilnya seperti dibawah ini, maka settingan di sisi Nginx-nya sudah benar.
root@tech1:~# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Kemudian, silahkan membuat file dengan nama index.php di /var/www/html untuk mengecek apakah PHP sudah berhasil diinstal atau tidak.
<?php phpinfo(); ?>
Lalu akses menggunakan URL berikut: IP_VPS/index.php. Jika berhasil maka tampilannya seperti ini:

Mengubah versi PHP-FPM di Nginx
Seperti yang sudah kami singgung diatas, Anda juga bisa mengubah versi PHP-FPM dengan mengikuti langkah-langkah berikut:
- Install versi PHP-FPM di Nginx
Sebagai contoh, kami ingin menginstal PHP versi 7.4. Silahkan menggunakan perintah berikut:
# apt-get install php7.4 php7.4-fpm php7.4-mbstring php7.4-curl php7.4-mysql -y
- Ubah konfigurasi PHP dari sisi Nginx
Jika pada panduan diatas fastcgi_pass menggunakan 8.1, maka silahkan diubah menjadi seperti baris script dibawah ini:
location ~ \.php$ {
include snippets/fastcgi-php.conf;
#
# # With php-fpm (or other unix sockets):
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
# # With php-cgi (or other tcp sockets):
# fastcgi_pass 127.0.0.1:9000;
}
- Tes konfigurasi
Silahkan menggunakan perintah dibawah ini pada server yang dimiliki, untuk memastikan apakah script yang kita edit sudah normal atau tidak.
nginx -t
Bila hasilnya seperti dibawah ini, maka settingan di sisi Nginx-nya sudah benar:
root@tech1:~# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
- Restart Nginx dan PHP
Terakhir, silahkan restart Nginx dan PHP dengan mengetikkan perintah berikut:
# service nginx restart
# service php7.4-fpm restart
Setelah mengikuti langkah-langkah diatas silahkan akses menggunakan URL berikut: IP_VPS/index.php. Jika berhasil maka tampilannya seperti gambar dibawah ini:
Demikian artikel kami tentang apa itu PHP-FPM dan cara install di Nginx Ubuntu 20.04. Semoga dapat membantu.