Apache dan Nginx gratis, sumber terbuka, dan populer – server web yang paling banyak digunakan di seluruh dunia. Apache dan Nginx keduanya berjalan di semua sistem operasi berbasis Unix. Apache terkenal dengan kekuatannya, sedangkan Nginx dikenal dengan kecepatannya. Nginx juga digunakan sebagai proxy terbalik untuk HTTP, HTTPS, IMAP, SMTP, POP3 dan sebagai penyeimbang beban.
PHP-FPM (FastCGI Process Manager) adalah implementasi PHP FastCGI alternatif yang dirancang khusus untuk situs web dengan beban tinggi. PHP-FPM memungkinkan Anda menjalankan beberapa versi PHP sekaligus. PHP-FPM dapat dijalankan dengan cara yang berbeda dari mod_PHP di server web. Jika Anda ingin meng-host aplikasi web Anda dengan kinerja optimal, maka PHP-FPM adalah pilihan terbaik untuk Anda.
Dalam tutorial ini, kami akan menjelaskan cara mengaktifkan dukungan PHP-FPM di server web Apache dan Nginx di server Ubuntu 18.04.
Prasyarat
- VPS Ubuntu 18.04 baru di Platform Cloud Atlantic.Net.
- Nama domain yang valid menunjuk ke alamat IP VPS Anda.
Langkah 1- Buat Server Cloud Atlantic.Net
Pertama, masuk ke Server Cloud Atlantic.Net Anda. Buat server baru, pilih Ubuntu 18.04 sebagai sistem operasi dengan setidaknya 2GB RAM. Hubungkan ke Server Cloud Anda melalui SSH dan masuk menggunakan kredensial yang disorot di bagian atas halaman.
Setelah Anda masuk ke server Ubuntu 18.04 Anda, jalankan perintah berikut untuk memperbarui sistem dasar Anda dengan paket terbaru yang tersedia.
apt-get update -y
Langkah 2 – Aktifkan Dukungan PHP-FPM di Server Web Apache
Di bagian ini, kita akan mempelajari cara menginstal dan mengaktifkan dukungan PHP-FPM di server web Apache.
Instal Apache dan PHP-FPM
Pertama, instal Apache dan PHP-FPM dengan menjalankan perintah berikut:
apt-get install apache2 libapache2-mod-php libapache2-mod-fcgid php php-fpm php-cli -y
Setelah semua paket terinstal, mulai layanan Apache dan PHP-FPM dengan perintah berikut:
systemctl start apache2 systemctl start php7.2-fpm
Konfigurasi Apache dengan Dukungan PHP-FPM
Selanjutnya, Anda perlu mengkonfigurasi server web Apache dengan dukungan PHP-FPM. Untuk melakukannya, buat file konfigurasi host virtual Apache baru:
nano /etc/apache2/sites-available/example.com.conf
Tambahkan baris berikut:
<VirtualHost *:80> ServerAdmin [email protected] DocumentRoot /var/www/html/ DirectoryIndex info.php ServerName example.com <Directory /var/www/html/> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all </Directory> <FilesMatch \.php$> # 2.4.10+ can proxy to unix socket SetHandler "proxy:unix:/run/php/php7.2-fpm.sock|fcgi://localhost" </FilesMatch> ErrorLog ${APACHE_LOG_DIR}/example.com_error.log CustomLog ${APACHE_LOG_DIR}/example.com_access.log combined </VirtualHost>
Simpan dan tutup file. Kemudian, aktifkan file konfigurasi virtual host dengan perintah berikut:
a2ensite example.com
Selanjutnya, Anda perlu mengaktifkan beberapa modul agar Apache2 dapat bekerja dengan PHP-FPM:
a2enmod actions fcgid alias proxy_fcgi
Selanjutnya, restart layanan Apache menggunakan perintah berikut:
systemctl restart apache2
Langkah 3 – Uji Server Web Apache
Server web Apache sekarang dikonfigurasi dengan dukungan PHP-FPM. Saatnya menguji apakah PHP-FPM dimuat dengan server web Apache atau tidak.
Untuk mengujinya, buat contoh file info.php di dalam direktori root dokumen Apache:
nano /var/www/html/info.php
Tambahkan baris berikut:
<?php phpinfo(); ?>
Simpan dan tutup file tersebut kemudian ubah kepemilikan file info.php menjadi www-data:
chown www-data:www-data /var/www/html/info.php
Selanjutnya, buka browser web Anda dan ketik URL http://example.com . Anda akan melihat halaman berikut:
Halaman di atas menunjukkan bahwa PHP-FPM dimuat dengan server web Apache.
Catatan: Jangan lupa untuk menghapus file info.php setelah pengujian.
Langkah 4 – Aktifkan Dukungan PHP-FPM di Server Web Nginx
Di bagian ini, kita akan mempelajari cara menginstal dan mengaktifkan dukungan PHP-FPM di server web Nginx.
Langkah 5 – Instal Nginx dan PHP-FPM
Pertama, instal Nginx dan PHP-FPM dengan menjalankan perintah berikut:
apt-get install nginx php php-fpm php-cli -y
Setelah semua paket terinstal, mulai layanan Nginx dan PHP-FPM dengan perintah berikut:
systemctl start nginx systemctl start php7.2-fpm
Langkah 6 – Konfigurasi Nginx dengan Dukungan PHP-FPM
Selanjutnya, Anda perlu mengonfigurasi server web Nginx dengan dukungan PHP-FPM. Untuk melakukannya, buat file konfigurasi virtual host Nginx baru:
nano /etc/nginx/sites-available/example.com.conf
Tambahkan baris berikut:
server { listen 80; root /var/www/html/; index info.php; server_name example.com; location ~ \.php$ { fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php/php7.2-fpm.sock; fastcgi_index index.php; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_intercept_errors off; fastcgi_buffer_size 16k; fastcgi_buffers 4 16k; fastcgi_connect_timeout 600; fastcgi_send_timeout 600; fastcgi_read_timeout 600; } location / { try_files $uri $uri/ =404; } } Save and close the file. Then, enable the Nginx virtual host with the following command:
ln -s /etc/nginx/sites-available/example.com.conf /etc/nginx/sites-enabled/
Selanjutnya, restart layanan Nginx dan PHP-FPM untuk menerapkan perubahan konfigurasi:
systemctl restart nginx systemctl restart php7.2-fpm
Langkah 7 – Uji Server Web Nginx
Server web Nginx sekarang dikonfigurasi dengan dukungan PHP-FPM. Saatnya untuk menguji apakah PHP-FPM dimuat dengan server web Nginx atau tidak.
Untuk mengujinya, buat contoh file info.php di direktori root dokumen Nginx:
nano /var/www/html/info.php
Tambahkan baris berikut:
<?php phpinfo(); ?>
Simpan dan tutup file tersebut kemudian ubah kepemilikan file info.php menjadi www-data:
chown www-data:www-data /var/www/html/info.php
Selanjutnya, buka browser web Anda dan ketik URL http://example.com . Anda akan melihat halaman berikut:
Halaman di atas menunjukkan bahwa PHP-FPM dimuat dengan server web Nginx.
Catatan: Jangan lupa untuk menghapus file info.php setelah pengujian.
Kesimpulan
Selamat! Anda telah berhasil mengonfigurasi server web Nginx dan Apache dengan dukungan PHP-FPM. Saya harap Anda sekarang memiliki pengetahuan yang cukup untuk menggunakan PHP-FPM untuk menjalankan beberapa versi PHP sekaligus. Untuk memulai PHP-FPM di Apache dan Nginx, daftar paket Hosting VPS dengan Atlantic.Net hari ini.