PHP-FPM (FastCGI Process Manager) adalah implementasi FastCGI alternatif untuk bahasa PHP. PHP-FPM merupakan interpreter PHP yang terpisah dari aplikasi web server. Setiap request atas script PHP yang masuk ke web serverakan diteruskan (forward) ke FastCGI melalui socket atau koneksi TCP/IP. Pada artikel ini kita akan membahas langkah-langkah dalam membangun web server dengan PHP-FPM. Show Sebelum mengikuti langkah-langkah dalam membangun web server dengan PHP-FPM dalam artikel ini, anda perlu melakukan instalasi web server NGINX terlebih dahulu. Anda dapat mengikuti langkah yang telah saya tuliskan dalam artikel berikut 1. Instalasi PHP-FPMLangkah pertama adalah dengan melakukan instalasi $ sudo apt update Setelah ... Yang perlu kita lakukan adalah menambah index index.html index.htm index.nginx-debian.html; menjadi index index.php index.html index.htm index.nginx-debian.html; Kemudian kita perlu mengubah bagian ...#location ~ \.php$ { menjadi location ~ \.php$ { Setelah perubahan konfigurasi tersebut disimpan, anda perlu me-restart service NGINX dengan perintah $ sudo systemctl restart nginx.service Untuk mengecek apakah konfigurasi tersebut berhasil, buatlah sebuah file PHP berisi <?php dalam root directory (misalnya Perhatikan nilai 2. Modifikasi Konfigurasi PHPTanpa langkah berikut, sebenarnya instalasi PHP tersebut telah dapat digunakan, namun kadang kita perlu melakukan beberapa modifikasi untuk meningkatkan keamanan sekaligus menyesuaikan dengan kebutuhan program PHP yang nantinya kita buat. Modifikasi cgi.fix_pathinfoModifikasi bagian ;cgi.fix_pathinfo=1 menjadi cgi.fix_pathinfo=0 kemudian me-restart service PHP-FPM dengan perintah $ sudo systemctl restart php7.0-fpm.service Modifikasi ini sangat penting dilakukan untuk mencegah PHP mengeksekusi file dengan nama yang paling mirip bila file dengan nama yang sama persis tidak ditemukan. Instalasi MySQL moduleBila anda ingin menggunakan PHP untuk mengolah RDBMS MySQL atau MariaDB, maka anda perlu mengaktifkan PHP MySQL module dengan cara menjalankan perintah $ sudo apt install php-mysql kemudian anda perlu me-restart service PHP-FPM dengan perintah $ sudo systemctl restart php7.0-fpm.service Untuk memastikan bahwa modul kemudian akses file tersebut menggunakan web browser, misalnya dengan mengakses Connection success. maka instalasi anda berhasil, namun bila tidak maka berarti ada masalah dengan proses instalasi yang anda lakukan. Pencarian dan Instalasi Berbagai Modul PHPUntuk meningkatkan fungsionalitas dari PHP, anda dapat menambahkan beberapa modul tambahan ke dalam PHP. Untuk mencari modul-modul yang tersedia dalam repository, gunakanlah perintah $ sudo apt-cache search php- Bila anda ingin pencarian yang lebih spesifik, kombinasikan dengan perintah grep, misalnya anda ingin mencari modul PHP yang berkaitan dengan zip, maka anda dapat menggunakan perintah $ sudo apt-cache search php- | grep zip Contoh output dari perintah tersebut adalah libphp-pclzip - transitional dummy package Bila anda sudah memutuskan modul apa yang perlu anda install, misalnya $ sudo apt install php-zip Kemudian restart service PHP-FPM dengan perintah $ sudo systemctl restart php7.0-fpm.service Menyembunyikan Versi PHP pada HTTP HeaderBila anda tidak menginginkan versi PHP anda tampil pada HTTP Header, demi alasan keamanan misalnya, maka anda dapat memodifikasi file expose_php = Off Kemudian restart service PHP-FPM dengan perintah $ sudo systemctl restart php7.0-fpm.service Demikianlah cara melakukan instalasi PHP-FPM dalam NGINX pada Ubuntu 16.04. Selamat mencoba. |