Cara menginstal apache dengan php-fpm di centos 8

Cara menginstal apache dengan php-fpm di centos 8

Cara umum untuk menjalankan PHP dengan Apache adalah modul mod_php. Tapi php-fpm memiliki beberapa keunggulan dibandingkan ini. PHP-FPM (FastCGI Process Manager) secara dramatis meningkatkan kinerja lingkungan Apache/PHP Anda. Jadi ini berguna untuk situs web beban tinggi. Tutorial ini akan membantu Anda mengkonfigurasi PHP-FPM dengan Apache pada Sistem Centos 8 dan RHEL 8 Linux.

Prerequsities

  • Akses Shell ke Sistem Centos 8 dengan Akun Privileges Sudo.
  • Lengkapi pengaturan server awal untuk sistem yang baru diinstal.

Langkah 1 - Instal Apache

Paket Apache tersedia di bawah repositori Appstream default. Anda dapat memperbarui cache DNF dan menginstal paket server web apache menggunakan perintah berikut.

sudo dnf update sudo dnf instal httpd httpd-tools mod_ssl 

Paket MOD_SSL menyediakan fungsionalitas untuk menggunakan sertifikat SSL untuk HTTP yang aman. Setelah instalasi, aktifkan layanan HTTPD dan mulai.

sudo systemctl mengaktifkan httpd sudo systemctl mulai httpd 

Langkah 2 - Pasang PHP dengan PHP -FPM

Repositori Remi berisi paket PHP terbaru untuk sistem Centos 8 Linux. Jadi pertama -tama, Anda perlu menambahkan repositori Remi ke sistem Anda. Cukup jalankan perintah berikut untuk menambahkan repositori.

sudo dnf instal dnf-utils http: // rpms.Remirepo.Net/Enterprise/Remi-Release-8.RPM 

Kemudian aktifkan modul DNF yang diperlukan untuk instalasi PHP. Di sini kami mengaktifkan modul untuk menginstal PHP 7.4. Anda dapat mengubah ini menjadi php 7.3 atau php 7.2 sesuai kebutuhan Anda.

Sudo DNF Modul Reset PHP Modul Sudo DNF Aktifkan PHP: REMI-7.4 

Sekarang, pasang PHP di sistem Anda. Karena kami akan menggunakan FastCGI Process Manager (FPM) untuk pengaturan ini. Jadi instal paket php-fpm juga.

Sudo DNF Pembaruan Sudo DNF Instal PHP PHP-FPM PHP-GD PHP-MYSQLND 

Anda mungkin juga memerlukan beberapa modul PHP lagi, jadi instal sebelum pergi berikutnya. Setelah menyelesaikan instalasi PHP memungkinkan layanan php-fpm dan memulainya.

sudo systemctl mengaktifkan php-fpm sudo systemctl mulai php-fpm 

Pastikan layanan php-fpm sedang berjalan.

status sudo status php-fpm ● PHP-FPM.Layanan - Manajer Proses FastCGI PHP dimuat: dimuat (/usr/lib/systemd/system/php -fpm.melayani; dengan disabilitas; Preset Vendor: Dinonaktifkan) Aktif: Aktif (Berjalan) Sejak Senin 2019-12-09 21:44:57 PST; 1H 24MIN AGO MAIN PID: 29280 (PHP-FPM) Status: "Proses Aktif: 0, Idle: 5, Permintaan: 3, Lambat: 0, Lalu Lintas: 0REQ/SEC" Tugas: 6 (Batas: 10321) Memori: 24.6m cgroup: /sistem.Iris/PHP-FPM.Layanan ├─29280 PHP-FPM: Proses Master (/etc/php-fpm.conf) ├─29281 php-fpm: pool www ├─29282 php-fpm: pool www ├─29283 php-fpm: pool www ├─29284 php-fpm: pool www └─29285 php-fpm: pool www dec 09 21 21 : 44: 57 Tecadmin.contoh.com Systemd [1]: Memulai PHP Fastcgi Process Manager… Des 09 21:44:57 Tecadmin.contoh.com Systemd [1]: Memulai PHP FastCGI Process Manager. 

Langkah 3 - Konfigurasikan PHP -FPM

Pada langkah ini, Anda telah menginstal semua paket yang diperlukan. Mari kita mulai proses konfigurasi. Pertama, edit file konfigurasi php-fpm untuk Apache:

sudo vim /etc /php-fpm.d/www.conf 

Buat perubahan seperti di bawah ini. Versi Apache terbaru dapat terhubung ke soket menggunakan proxy. Jadi pastikan mendengarkan diatur ke file soket.

Kemudian atur pengguna dan grup sama dengan server Apache menggunakan. Jika Anda perlu menghubungkan FPM dari perubahan sistem jarak jauh, dengarkan.diizinkan_clients ke IP LAN, bukan 127.0.0.1.

; Dengarkan = 127.0.0.1: 9000 Listen =/run/php-fpm/www.Sock User = Apache Group = Apache Dengar.diizinkan_clients = 127.0.0.1 Dengarkan.Pemilik = Apache Dengar.grup = apache dengarkan.Mode = 0660 pm = dinamis
1234567891011; Dengarkan = 127.0.0.1: 9000Listen =/run/php-fpm/www.Sock User = ApacheGroup = Apache Dengar.diizinkan_clients = 127.0.0.1Listen.pemilik = apachelisten.grup = apachelisten.Mode = 0660pm = dinamis

Setelah melakukan perubahan restart layanan php-fpm untuk menerapkan perubahan.

sudo systemctl restart php-fpm 

Langkah 4 - Buat Apache VirtualHost

Sekarang, waktunya untuk mengkonfigurasi Apache untuk menggunakan php-fpm untuk memproses file php. Berikut adalah dua opsi, baik Anda menggunakan FPM sebagai default untuk semua host virtual atau Anda dapat secara khusus mengkonfigurasi host virtual untuk menggunakan FPM. Dengan cara ini, host virtual lainnya tidak akan terpengaruh.

Untuk contoh ini, saya mengkonfigurasi FPM hanya untuk host virtual tertentu. Jadi file konfigurasi yang diedit di editor teks:

sudo vim/etc/httpd/conf.D/Contoh.com.conf 

Sekarang ditambahkan konfigurasi proxy menggunakan file soket. Juga mengonfigurasi semua skrip PHP untuk menggunakan penangan FPM untuk dieksekusi.

Serveradmin [email protected] Documentrooth/var/www/html Contoh Layanan.com ServeralIas www.contoh.com # proxy Declaration # Kita harus mendeklarasikan parameter di sini (tidak masalah mana) atau # itu tidak akan mendaftarkan proxy sebelumnya proxyset disablereuse = off # note: Jika Anda mengkonfigurasi php-fpm untuk menggunakan "pm = OnDemand "#then Gunakan" Proxyset Disablereuse = On "Sethandler Proxy: FCGI: // Log/Contoh PHP-FPM ERRORLOG/Contoh.com-error.Log Log CustomLog/Contoh.com-access.log digabungkan
12345678910111213141516171819202122232425 Serveradmin [email protected] Documentrooth/var/www/html Contoh Layanan.com ServeralIas www.contoh.Deklarasi Proxy Com # # Kita harus mendeklarasikan parameter di sini (tidak masalah mana) atau # itu tidak akan mendaftarkan proxy sebelumnya proxyset disablereuse = off # note: Jika Anda mengkonfigurasi php-fpm untuk menggunakan "pm = ondemand" #then Gunakan "Proxyset Disablereuse = ON" Sethandler Proxy: fcgi: // php-fpm Log/Contoh ErrorLog.com-error.Log Log CustomLog/Contoh.com-access.log digabungkan

Simpan file konfigurasi host virtual dan muat ulang Apache untuk menerapkan perubahan.

sudo systemctl restart httpd 

Langkah 5 - Aktifkan Aturan Firewall

Server Anda siap melayani aplikasi. Jika ada firewall yang diaktifkan di sistem Anda, pastikan port Apache terbuka untuk diakses dari sistem jarak jauh.

Perintah berikut akan membuka port yang diperlukan untuk Anda.

sudo firewall-cmd --zone = public --permanent --add-service = http sudo firewall-cmd --zone = public --permanent --add-service = https sudo firewall-cmd --road 

Langkah 6 - Pengaturan Uji

Semua selesai. Untuk menguji lingkungan, buat skrip PHP dengan phpinfo () fungsi. Tempatkan file ini ke root dokumen server Anda. Gunakan perintah di bawah ini untuk melakukan ini.

gema "">/var/www/html/info.php 

Kemudian akses info.PHP Menggunakan Alamat IP Server (untuk Default VirtualHost) untuk domain Anda yang dikonfigurasi di Apache VirtualHost.

http: // localhost/info.php 

Kesimpulan

Anda telah berhasil mengonfigurasi apache dengan php-fpm pada sistem centos 8 atau rhel 8 linux Anda. Anda sekarang dapat meng -host situs web dari server Anda.