Cara Instal PHP PHP-FPM di NGINX dengan OpenBSD
· 2 min read · Label UnixBSD
Nginx adalah server web yang sangat baik dalam hal kinerja dan keamanan. Nginx menggunakan antarmuka PHP-FPM (FastCGI Process Manager) untuk bekerja bersama dengan PHP. Meskipun nginx sudah kita atur dengan baik secara default, kecuali pengaturan open file cache, untuk PHP-FPM Anda perlu menyetel beberapa pengaturan penting. Nginx memiliki penggunaan memori yang dapat diprediksi.
Nginx, berdasarkan arsitekturnya, memproses permintaan dengan cepat dan mengembalikan data statis, sehingga proyek ini berhasil merebut ceruk pasar, menggantikan raksasa seperti Apache HTTP Server. Dukungan nginx untuk antarmuka (CGI, FastCGI, dll.) memungkinkannya digunakan bersama dengan aplikasi eksternal, seperti PHP, Perl, Python, dan lainnya.
Jadi, nginx adalah server HTTP, dan ia juga dapat menjadi proxy untuk protokol TCP, UDP, IMAP, POP3, HTTP, dan protokol lainnya. Sejauh yang saya ketahui, ketika menulis nginx, prinsip-prinsip pemrograman berorientasi peristiwa digunakan, yang memungkinkan tercapainya pemrosesan kueri yang cepat dan efisien dengan konsumsi sumber daya yang minimal.
Artikel ini akan menunjukkan opsi untuk menginstal Nginx dan PHP dalam sistem operasi OpenBSD 7.6, menganalisis parameter utama file konfigurasi nginx.conf dan php-fpm.conf, dan membuat kumpulan PHP-FPM.
OS: OpenBSD 7.6 amd64
Host: Acer Aspire M1800
Uptime: 8 mins
Packages: 42 (pkg_info)
Shell: ksh v5.2.14 99/07/13.2
Terminal: /dev/ttyp0
CPU: Intel Core 2 Duo E8400 (2) @ 3.000GHz
Memory: 35MiB / 1775MiB
IP Address: 192.168.5.3
Versi NGINX: nginx-1.26.2
Versi PHP: php-8.3.17
Versi PHP-FPM: php83_fpm
Nginx, berdasarkan arsitekturnya, memproses permintaan dengan cepat dan mengembalikan data statis, sehingga proyek ini berhasil merebut ceruk pasar, menggantikan raksasa seperti Apache HTTP Server. Dukungan nginx untuk antarmuka (CGI, FastCGI, dll.) memungkinkannya digunakan bersama dengan aplikasi eksternal, seperti PHP, Perl, Python, dan lainnya.
Jadi, nginx adalah server HTTP, dan ia juga dapat menjadi proxy untuk protokol TCP, UDP, IMAP, POP3, HTTP, dan protokol lainnya. Sejauh yang saya ketahui, ketika menulis nginx, prinsip-prinsip pemrograman berorientasi peristiwa digunakan, yang memungkinkan tercapainya pemrosesan kueri yang cepat dan efisien dengan konsumsi sumber daya yang minimal.
Artikel ini akan menunjukkan opsi untuk menginstal Nginx dan PHP dalam sistem operasi OpenBSD 7.6, menganalisis parameter utama file konfigurasi nginx.conf dan php-fpm.conf, dan membuat kumpulan PHP-FPM.
Spesifikasi Sistem
root@ns2.datainchi.comOS: OpenBSD 7.6 amd64
Host: Acer Aspire M1800
Uptime: 8 mins
Packages: 42 (pkg_info)
Shell: ksh v5.2.14 99/07/13.2
Terminal: /dev/ttyp0
CPU: Intel Core 2 Duo E8400 (2) @ 3.000GHz
Memory: 35MiB / 1775MiB
IP Address: 192.168.5.3
Versi NGINX: nginx-1.26.2
Versi PHP: php-8.3.17
Versi PHP-FPM: php83_fpm
A. Konfigurasi NGINX di OpenBSD - Port HTTP dan HTTPS
Proses instalasi Nginx adalah proses awal yang harus anda kerjakan. Pada artikel ini kami tidak menjelaskan tentang cara instal Nginx di OpenBSD. Anda dapat membaca artikel kami sebelumnya yang membahas cara instal Nginx di OpenBSD.B. Instal PHP dan PHP-FPM
Aplikasi PHP tidak ikut terinstal ketika anda menginstal NGINX, namun sebaliknya PHP-FPM akan ikut terinstal secara otomatis ketika anda menginstal PHP. Jadi lebih jelasnya, untuk mengaktifkan aplikasi PHP anda harus menginstal-nya terlebih dahulu.
Dalam artikel ini, kita melihat cara menginstal php-fpm dan mengkonfigurasinya untuk dapat berjalan dengan Nginx. PHP-FPM menyediakan keandalan, keamanan, skalabilitas, dan kecepatan, serta menawarkan banyak opsi penyetelan kinerja. Sekarang Anda dapat membagi pool PHP-FPM standar menjadi beberapa pool untuk melayani aplikasi yang berbeda. Ini tidak hanya akan meningkatkan keamanan server Anda, tetapi juga memungkinkan Anda mengalokasikan sumber daya secara optimal.
Instal PHP (otomatis PHP-FPM terinstal)
ns2# pkg_add php
PHP-FPM secara otomatis terinstal dengan paket PHP. Langkah berikutnya anda hanya perlu mengaktifkan PHP-FPM, agar dapat berjalan secara otomatis ketika server di restart/reboot.
Aktifkan PHP-FPM
ns2# rcctl enable php82_fpm
ns2# rcctl restart php82_fpm
php83_fpm(ok)
php83_fpm(ok)
ns2#
a. Buat File simlink PHP
Agar php dapat dieksekusi dalam sintak php, anda harus membuat 3 (tiga) simlink, seperti contoh berikut.
Buat simlink
ns2# ln -s /usr/local/bin/php-8.3 /usr/local/bin/php
ns2# ln -s /usr/local/bin/php-config-8.3 /usr/local/bin/php-config
ns2# ln -s /usr/local/bin/phpize-8.3 /usr/local/bin/phpize
b. Salin file *.ini
Selain membuat file simlink, anda juga harus menyalin beberapa file yang berekstension *.ini.
Buat simlink
ns2# cp /etc/php-8.3.sample/* /etc/php-8.3/
C. Cara Menjalankan PHP-FPM
Setelah anda mengaktifkan PHP-FPM, pasti anda ingin menjalankan/mengetest PHP-FPM di Nginx. Ikuti langkah-langkah berikut untuk menjalankan PHP-FPM di Nginx.
a. Aktifkan PHP-FPM di Nginx
Agar PHP-FPM dapat berjalan bersama server web Nginx, anda harus mengaktifkan PHP-FPM di konfigurasi Nginx. Buka file "/etc/nginx/vhostsSSL.conf".
Catatan: Nginx berjalan di port HTTPS (443).
Script file /etc/nginx/vhostsSSL.conf
server {
listen 443 ssl;
server_name datainchi.com;
root /var/www/htdocs/nginxssl;
ssl_certificate /etc/nginx/SSL/nginxssl.crt;
ssl_certificate_key /etc/nginx/SSL/nginxssl.key;
ssl_session_timeout 5m;
ssl_session_cache shared:SSL:1m;
ssl_ciphers HIGH:!aNULL:!MD5:!RC4;
ssl_prefer_server_ciphers on;
#location ~ \.php$ {
# proxy_pass http://127.0.0.1;
#}
# pass the PHP scripts to FastCGI server listening on unix socket
#
location ~ \.php$ {
try_files $uri $uri/ =404;
fastcgi_pass unix:run/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
b. Buat file /var/www/htdocs/nginxssl/info.php
Sebagai langkah awal untuk mengetes apakah PHP-FPM telah berjalan atau belum, anda buat file bernama "info.php".
Buat file /var/www/htdocs/nginxssl/info.php
ns2# touch /var/www/htdocs/nginxssl/info.php
Kemudian pada file tersebut anda ketikkan script di bawah ini.
Script untuk file /var/www/htdocs/nginxssl/info.php
<?php
phpinfo();
?>
Script untuk file /etc/php-fpm.conf
Klick Untuk Lihat Script
c. Jalankan perintah chown
Chown adalah sebuah perintah di sistem operasi Unix seperti FreeBSD dan OpenBSD. Perintah chown digunakan untuk mengubah kepemilikan suatu file atau direktori.
/var/www/htdocs/nginxssl/info.php
ns2# chown -R www:www /var/www/htdocs/nginxssl/info.php
d. Buka Google Chrome
Pada bagian ini kita akan melihat hasil dari konfigurasi PHP-FPM diatas. Untuk melakukannya anda buka browser Yandex atau Google Chrome, kemudian anda ketikkan "https://192.168.5.3/info.php". Jika anda hanya mengaktifkan port 80 (http) saja, ketik "http://192.168.5.3/info.php".Hasilnya dapat anda lihat seperti gambar di bawah ini.
Dalam artikel ini, kita melihat cara menginstal php-fpm dan mengkonfigurasinya untuk dapat berjalan dengan Nginx. PHP-FPM menyediakan keandalan, keamanan, skalabilitas, dan kecepatan, serta menawarkan banyak opsi penyetelan kinerja. Sekarang Anda dapat membagi pool PHP-FPM standar menjadi beberapa pool untuk melayani aplikasi yang berbeda. Ini tidak hanya akan meningkatkan keamanan server Anda, tetapi juga memungkinkan Anda mengalokasikan sumber daya secara optimal.
Silahkan Berkomentar, Kakak...! Bunda...!
Posting Komentar