Mengkonfigurasi Apache untuk bekerja dengan PHP melibatkan memilih antara dua kaedah utama: mod_php
dan php-fpm (pengurus proses fastcgi). mod_php
mengintegrasikan PHP terus ke Apache sebagai modul, manakala PHP-FPM berjalan sebagai pengurus proses berasingan yang berkomunikasi dengan Apache melalui antara muka FastCGI.
Menggunakan mod_php: Ini adalah pendekatan yang lebih mudah, yang memerlukan kurang konfigurasi. Selepas memasang PHP, pastikan modul mod_php
Apache diaktifkan. Ini biasanya melibatkan sama ada memulakan semula APACHE selepas pemasangan atau secara eksplisit membolehkan modul menggunakan pengurus pakej sistem anda ( a2enmod php7.4
7.4
Apache secara automatik akan mengendalikan pemprosesan PHP untuk fail dengan sambungan .php
. Tiada konfigurasi selanjutnya biasanya diperlukan, walaupun anda mungkin perlu menyesuaikan fail php.ini
untuk tetapan tertentu.
Menggunakan PHP-FPM: Kaedah ini menawarkan prestasi dan pengurusan sumber yang lebih baik, terutamanya di bawah beban berat. Pertama, pasang PHP-FPM. Kemudian, anda perlu mengkonfigurasi Apache untuk bertindak sebagai pelanggan FastCGI. Ini melibatkan menambah blok konfigurasi dalam fail konfigurasi Apache anda (biasanya terletak di /etc/apache2/sites-available/000-default.conf
atau jalan yang sama, bergantung pada sistem anda). Blok ini biasanya termasuk arahan <location></location>
atau <directory></directory>
yang menyatakan lokasi fail PHP anda dan menggunakan Arahan proxy_pass
untuk memohon permintaan ke soket PHP-FPM. Konfigurasi biasa mungkin kelihatan seperti ini:
<code class="apache"><directory> Options Indexes FollowSymLinks AllowOverride All Require all granted <filesmatch> SetHandler "proxy:unix:/run/php/php7.4-fpm.sock|fcgi://localhost" </filesmatch> </directory></code>
Ingatlah untuk menggantikan /run/php/php7.4-fpm.sock
dengan laluan sebenar ke soket php-fpm anda dan laraskan arahan Directory
untuk menunjuk ke akar web anda. Selepas mengkonfigurasi Apache, mulakan semula untuk perubahan yang berlaku. PHP-FPM sepatutnya berjalan; Jika tidak, mulakannya menggunakan sistem INIT sistem anda (misalnya, systemctl start php7.4-fpm
).
mod_php:
Kelebihan:
Kekurangan:
PHP-FPM:
Kelebihan:
Kekurangan:
Masalah penyelesaian masalah bergantung kepada sama ada anda menggunakan mod_php
atau PHP-FPM.
mod_php:
error.log
) untuk mesej ralat tertentu. Penyebab umum termasuk kesilapan sintaks dalam kod PHP anda, sambungan PHP yang hilang, atau isu kebenaran.mod_php
diaktifkan. Semak kebenaran fail pada fail PHP anda.php.ini
untuk isu konfigurasi.PHP-FPM:
/var/log/php-fpm/error.log
atau laluan yang sama). Log ini akan memberikan mesej ralat yang lebih terperinci.Proses pemasangan dan membolehkan bergantung kepada sistem operasi dan pengurus pakej anda.
Menggunakan mod_php:
apt-get install php7.4 libapache2-mod-php7.4
pada Debian/Ubuntu).mod_php
(misalnya, a2enmod php7.4
).systemctl restart apache2
).Menggunakan PHP-FPM:
apt-get install php7.4 php7.4-fpm
).<location></location>
atau <directory></directory>
blok ke fail konfigurasi Apache anda seperti yang diterangkan dalam bahagian pertama.systemctl start php7.4-fpm
). Ingatlah untuk menggantikan 7.4
dengan versi PHP sebenar anda. Sentiasa berunding dengan dokumentasi pengedaran anda untuk arahan yang paling tepat dan terkini.
Atas ialah kandungan terperinci Bagaimana saya mengkonfigurasi Apache untuk bekerja dengan PHP menggunakan mod_php atau php-fpm?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!