nginx berbeza daripada apache Dalam apache, anda boleh menentukan log ralat php secara langsung, supaya maklumat ralat semasa pelaksanaan php dimasukkan terus ke dalam log ralat php, yang boleh ditanya dengan mudah.
Dalam nginx, perkara menjadi seperti ini: nginx hanya merekodkan log akses untuk lawatan halaman. Tidak akan ada maklumat log ralat php. nginx menghantar permintaan untuk php ke proses fastcgi php-fpm untuk pemprosesan php-fpm lalai hanya akan mengeluarkan mesej ralat php-fpm, dan log ralat php tidak dapat dilihat dalam log ralat php-fpm.
Sebabnya ialah fail konfigurasi php-fpm php-fpm.conf lalai untuk mematikan output ralat proses pekerja dan mengalihkannya terus ke /dev/null, jadi kami menggunakan log ralat dan php nginx - Log ralat fpm tidak dapat melihat log ralat php.
Jadi kita perlu membuat tetapan berikut untuk melihat bagaimana php-fpm tidak merekodkan log ralat php di bawah nginx:
1 Ubah suai konfigurasi dalam php-fpm.conf , jika tidak sila tambah:
Salin kod Kod adalah seperti berikut:
[global]
nota: awalan lalai ialah /usr/; local/php/var
error_log = log/php_error_log
[www]
catch_workers_output = yes
2 Ubah suai konfigurasi dalam php.ini, jika tidak, tambah:
Salin kod Kod adalah seperti berikut:
log_errors = on
error_log = "/usr/local/php/var/log/error_log"
error_reporting=e_all&~e_notice
3. Mulakan semula php-fpm
Apabila php melaksanakan ralat, anda boleh melihat log masuk ralat "/usr/local /lnmp/php/var/log/php_error_log" Jika
muncul:
Salin kod Kod adalah seperti berikut:
[root@localhost dll]# perkhidmatan php-fpm mulakan semula
mematikan php -fpm dengan baik
memulakan php-fpm [17-apr-2014 18:40:52] ralat: [/usr/local/php/etc/php-fpm. .conf:5] entri tidak diketahui 'catch_workers_
[17-apr-2014 18:40:52] ralat: gagal memuatkan fail konfigurasi '/usr/local/php/etc/php-fpm.conf'
[17-apr-2014 18:40:52] ralat: permulaan fpm gagal
gagal
Dalam langkah pertama, sila tulis konfigurasi dengan teliti ke dalam kumpulan yang sepadan, jika tidak, mesej di atas akan muncul:
Salin kod Kod adalah seperti berikut:
ralat: [/usr/local/php/etc/php-fpm.conf:5] entri tidak diketahui 'catch_workers_output '
Akhirnya lihat kesannya:
Atas ialah kandungan terperinci Bagaimana untuk mengkonfigurasi log ralat PHP apabila menggunakan PHP-FPM dalam Nginx. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!