php-fpm没有显示php exec函数的错误

时间:2011-06-22 20:54:10

标签: php nginx exec

我使用PHP exec函数来运行一些python脚本。我使用的是apache,它记录了error.log文件中的所有错误。每当出现语法错误或其他任何问题时,都会记录在apache错误日志中。但是现在我已经安装了nginx和php-fpm。

这里的问题是,只要python中出现错误,nginx就不会在error.log中记录任何内容。在exec中作为第二个参数传递的$输出也是一个空数组。所以现在我无法从python或终端获得错误。请告诉我如何解决这些错误......

2 个答案:

答案 0 :(得分:4)

您可以在nginx站点配置文件中设置错误日志:nginx/sites/sites-available/{RELEVANT SITE FILE}

确保在文件中包含此内容:

error_log  /var/www/logs/nginx.error.log debug_http;

您也可以尝试使用php的错误报告:

<?php

   error_reporting(E_ALL);
   ini_set('display_errors', '1');

   // Manual Error Log Creation
   error_log($customError, 3, "/var/www/logs/php.error.log");

   // YOUR CODE BELOW

?>

要注意的另一件事是,如果您根本没有输出任何内容,那么它也会显示为错误,请查看其他stackoverflow post

答案 1 :(得分:3)

Nginx不负责此类日志记录。

您必须在php-fpm.conf

添加error logging directives