Sanal ana bilgisayar başına günlük dosyalarına yazmak için NGINX üzerinden PHP-FPM nasıl yapılandırılır


11

Nginx ve PHP-FPM ile Fedora 16 var. Her şey çok iyi çalışıyor. PHP bildirimleri, uyarılar, hatalar vs. içeren tüm günlükler içindedir /var/log/php-fpm/www-error.log.

PHP-FPM'yi Nginx için hata günlükleri olarak yapılandırılmış uygun günlük dosyalarına hata yazacak şekilde yapılandırmanın bir yolu var mı? Bu yüzden bir global dosyada değil, sanal ana bilgisayar başına PHP hatalarını kaydetmek istiyorum . (Apache Httpd ve PHP'deki gibi).

Yanıtlar:


14

PHP-FPM yönergesi: catch_workers_output = yes PHP'nin stdout / stderr'e gönderdiği hataların nginx'e geri gönderilmesine neden olur ve bunlar günlüğe kaydedilir.

PHP 5.2.4 ve daha yeni sürümlerde display_errors yönergesi artık bir boolean değildir, ancak 'stderr' seçeneğini bir seçenek olarak kabul edecektir. Bu, tüm hataların nginx'e geri dönmesine ve her vhost için günlüğe kaydedilmesine neden olmalıdır.

PHP-FPM yapılandırmanızda:

php_admin_value[display_errors] = 'stderr'

Diğer seçeneğiniz direktif:

php_admin_value[error_log] = /var/log/fpm-php.www.log

şimdi kullanmakta olduğunuz şey budur. php-fpm.conf $ pool gibi bazı değişkenleri destekler (sizin için büyük olasılıkla 'www' döndürür).

Birden fazla havuzunuz varsa, ayrı ayrı kolayca oturum açabilirsiniz.

Kaynak kodu üzerinden hızlı bir göz atma, $ pool gibi tek değişken olsa görünüyor.


1
Hmm, bazı sorunlardisplay_errors="stderr" var gibi görünüyor . Çalışmak için test ettiniz mi?
Pacerier
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.