FastCGI Process Manager (FPM) adalah alternatif untuk konfigurasi FastCGI dengan beberapa peningkatan. Ini berguna untuk situs web beban tinggi. Tutorial ini akan membantu Anda dengan instalasi dan konfigurasi PHP-FPM dengan Nginx di sistem Linux Debian 10 Buster Anda.
Prasyarat
Anda harus memiliki akses SSH ke sistem Debian 10 dengan hak istimewa Sudo.
Instalasi Nginx
Paket Nginx tersedia di bawah repositori default. SSH ke sistem Debian 10 Anda dengan akun hak istimewa sudo dan instal server web Nginx dari repositori resmi.
sudo apt update sudo apt install nginx
Instalasi PHP
Untuk instalasi PHP, kami menyarankan untuk menggunakan PPA Ondřej Surý, yang menyediakan versi PHP terbaru untuk sistem Debian. Gunakan beberapa perintah di bawah ini untuk menambahkan PPA ke sistem Anda.
wget -q https://packages.sury.org/php/apt.gpg -O- | sudo apt-key add - sudo echo "deb https://packages.sury.org/php/ buster main" | tee /etc/apt/sources.list.d/php.list
Kemudian instal PHP versi terbaru yang tersedia pada hari penulisan tutorial ini. Cukup jalankan perintah berikut untuk instalasi paket PHP dan PHP-FPM.
Catatan:- Saat Anda menggunakan PHP-FPM. Semua konfigurasi modul PHP berada di bawah /etc/php/7.3/fpm/ direktori. Anda dapat membaca lebih lanjut tentang mengaktifkan/menonaktifkan modul PHP.apt update sudo apt install php php-fpm
Setelah menginstal paket-paket di atas, layanan php7.3-fpm akan secara otomatis dimulai. Anda dapat memastikannya dengan mengetikkan perintah di bawah ini pada terminal.
sudo systemctl status php7.3-fpm ● php7.3-fpm.service - The PHP 7.3 FastCGI Process Manager Loaded: loaded (/lib/systemd/system/php7.3-fpm.service; enabled; vendor preset: enabled) Active: active (running) since Tue 2019-12-03 10:01:54 UTC; 24min ago Docs: man:php-fpm7.3(8) Main PID: 9883 (php-fpm7.3) Status: "Processes active: 0, idle: 2, Requests: 3, slow: 0, Traffic: 0req/sec" Tasks: 3 (limit: 3587) Memory: 14.2M CGroup: /system.slice/php7.3-fpm.service ├─9883 php-fpm: master process (/etc/php/7.3/fpm/php-fpm.conf) ├─9884 php-fpm: pool www └─9885 php-fpm: pool www Dec 03 10:01:54 tecadmin-debian10 systemd[1]: Starting The PHP 7.3 FastCGI Process Manager... Dec 03 10:01:54 tecadmin-debian10 systemd[1]: Started The PHP 7.3 FastCGI Process Manager.
Konfigurasi Nginx
Mari buat virtual host Nginx untuk dijalankan dengan FPM/FastCGI. Untuk tutorial ini, kami menggunakan VirtualHost default. Edit file konfigurasi Host VirtualHost dalam editor teks. Anda dapat membuat VirtualHost baru sesuai kebutuhan Anda, jadi pastikan untuk mengaktifkan VirtualHost baru.
sudo vim /etc/nginx/sites-available/example.com
Gunakan konfigurasi Nginx Virtual host dasar di bawah ini dengan pengaturan PHP FPM. Perbarui konfigurasi sebagai berikut.
Apache
12345678910112131415 | server { dengarkan 80; root /var/www/html; indeks index.php index.html index.htm; nama_server contoh.com; lokasi / { try_files $uri $uri/ =404; } lokasi ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php7.3-fpm.sock; }} |
Simpan perubahan Anda ke file konfigurasi dan buat tautan ke direktori yang diaktifkan situs.
sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/example.com
Kemudian restart layanan Nginx untuk memuat ulang perubahan.
sudo systemctl restart nginx.service
Pengaturan Pengujian
Buat skrip PHP dengan phpinfo() fungsi dan letakkan di root dokumen server Anda. Gunakan perintah di bawah ini untuk melakukannya.
echo "<?php phpinfo(); ?>" > /var/www/html/info.php
Sekarang akses info.php menggunakan alamat IP server (untuk VirtualHost default) untuk domain Anda yang dikonfigurasi di Nginx VirtualHost.
http://localhost/info.php
Kesimpulan
Semua selesai. Anda telah berhasil mengonfigurasi server web Nginx dengan PHP-FPM di Linux Debian 10 (Buster) Anda. Server Anda siap menghosting situs web.