{CentOS7}{LAB 8.17} Konfigurasi PHP-FPM pada Nginx
Assalamualaikum wr wb
Pada kesempatan kali ini saya akan menjelaskan tentang cara konfigurasi php-fpm pada Nginx. PHP-FPM ini sama dengan php yang ada pada apache. PHP-FPM (PHP FastCGI Proccess Manager) adalah alternatif implementasi PHP FastCGI dengan tambahan fitur yang berguna untuk halaman website.
Topologi
Konfigurasi Server
1) Menginstall php php-mbstring dan php-pear sebagai paket tambahan yang dibutuhkan untuk menginstall php-fpm. Sebelumnya saya sudah mempunyai/menginstall epel repo jadi saya hanya butuh mengaktifkannya saja, yaitu dengan perintah --enablerepo=epel
yum --enablerepo=epel -y install php php-mbstring php-pear
Pastikan paket-paket tambahan tersebut terinstall dengan baik sampai selesai
3) Untuk menginstall php-fpm kita membutuhkan repo remi karena di repository remi lah php-fpm ini berada. Untuk menginstall remi reponya bisa dengan perintah berikut ini.
yum install https://rpms.remi.repo.net/enterprise/remi-release-7.rpm -y
4) Jika remi repo sudah tersedia, selanjutnya kita perlu mengaktifkan repo remi nya. Agar mudah kita menggunakan perintah --enablerepo saja dan untuk menginstall php-fpm nya bisa dengan perintah berikut ini
yum --enablerepo=remi install php-fpm -y
5) Masuk ke folder /etc/php-fpm.d/www.conf. Untuk melakukan konfigurasi jenis web server apa yang nantinya digunakan untuk mengAccess si php-fpm.
nano /etc/php-fpm.d/www.conf
6) Pada file www.conf ini kita akan mengubah user dan grup untuk proses php-fpm tersebut. Karena disini judulnya kita menggunakan Nginx, maka ubah dari defaultnya yaitu apache menjadi nginx. Cari script seperti dibawah ini.
7) Kemudian jalankan dan aktifkan service php-fpm agar konfigurasi tadi berjalan.
systemctl start php-fpm
systemctl enable php-fpm
8) Selanjutna kita akan mengkonfigurasi file vhost.conf
nano /etc/nginx/conf.d/vhost.conf
Disini kita akan menambahkan beberapa baris pada website yang akan menggunakan php-fpm. Caranya adalah menambahkan baris seperti dibawah ini kedalam block server pada konfigurasi website nginx anda.
Penjelasan :
location ~ \.php$ berguna untuk membuat block konfigurasi untuk file .php yang akan dieksekusi dan ditampilkan ke client.
fastcgi_pass 127.0.0.1:9000 berguna untuk mendefinisikan server fastcgi. Disini karena saya menginstallnya didalam server yang sama, maka saya mengaturnya menjadi ip loopback atau localhost. Agan juga bisa mengaturnya menjadi IP atau domain server cgi beserta portnya.
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name berguna untuk mengatur parameter SCRIPT_FILENAME yang kemudian akan diberikan ke server FastCGI untuk dieksekusi. Parameter SCRIPT_FILENAME merupakan parameter yang digunakan dalam PHP untuk menentukan nama script. Maka dari itu terdapat value $fastcgi_script_name dan $document_root merupakan letak direktori konten website tersebut.
fastcgi_param PATH_INFO $fastcgi_path_info berguna untuk memberikan informasi letak dari konten php tersebut dan mengirimkannya ke server fastcgi.
include fastcgi_params berguna untuk memasukkan parameter fastcgi yang telah diatur.
9) Restart service nginx agar konfigurasi diatas berjalan dengan baik.
systemctl restart nginx
10) Untuk pengetesannya, disini saya membuat file info.php yang akan menampilkan tampilah web php-fpm nya pada web browser.
echo "<?php phpinfo() ?>" > /usr/share/nginx/html/info.php
Pengujian pada Client
1) untuk pengujiannya, buka browser apa saja kemudian akses web browser anda dengan tambahan info.php untuk membuktikan apakah php yang anda konfigurasi tadi berhasil atau tidak.
"domain"/info.php atau www.pandutama.net/info.php
alhamdulillah telah berhasil
semoga bermanfaat
wassalamualaikum wr wb
0 comments: