Ho creato un sito Apache2/PHP-FPM e vorrei che gli errori di PHP-FPM venissero registrati nel proprio file di log degli errori. Tuttavia, con l'attuale configurazione, gli errori vengono registrati al /var/log/php5-fpm.log nel seguente formato:PHP-FPM con file di log degli errori dedicato
WARNING: [pool www] child 22926 said into stderr: "NOTICE: PHP message: PHP Parse error: syntax error, unexpected 'if' (T_IF) in /var/www/site.com/error.php on line 1"
Nel mio /etc/php5/fpm/pool.d/www. conf ho le seguenti opzioni:
php_admin_value[error_log] = /var/log/fpm-php.www.log
php_admin_flag[log_errors] = on
catch_workers_output = yes
Quando disattivo catch_workers_output
, la registrazione degli errori cessa completamente. Tuttavia, nell'output di phpinfo(), mostra il file di log che ho specificato nella configurazione.
Perché PHP5-FPM non rispetta questo file di registro. C'è un modo per avere errori per il pool di fpm registrati in un file separato?
La mia versione di PHP:
# php5-fpm -v
PHP 5.4.9-4~precise+1 (fpm-fcgi) (built: Nov 30 2012 10:48:01)
Grazie per qualsiasi informazione!
Ogni sito dovrebbe avere il proprio log degli errori. Perché non apache l'accesso agli errori per ogni dominio/sito e error_log in php per ogni dominio/sito? –
Esiste un log degli errori di Apache e ottiene l'output dell'errore FastCGI da PHP. Tuttavia, PHP non eseguirà il log in quello che viene segnalato nell'output phpinfo() per error_log - il file che viene visualizzato non viene creato. (Predefinito, /var/log/fpm-php.www.log) – Dan