php-fpm打开错误日志的配置

nginx与apache不一样,在apache中可以直接指定php的错误日志,那样在php执行中的错误信息就直接输入到php的错误日志中,可以方便查询。

在nginx中事情就变成了这样:nginx只对页面的访问做access记录日志。不会有php的error log 信息。nginx把对php的请求发给php-fpm fastcgi进程来处理,默认的php-fpm只会输出php-fpm的错误信息,在php-fpm的errors log里也看不到php的errorlog。

原因是php-fpm的配置文件php-fpm.conf中默认是关闭worker进程的错误输出,直接把他们重定向到/dev/null,所以我们在nginx的error log 和php-fpm的errorlog都看不到php的错误日志。

所以我们要进行如下的设置就能查看到nginx下php-fpm不记录php错误日志的方法:

1,修改php-fpm.conf中的配置,如果没有请增加:

复制代码 代码如下:

[global]
; Note: the default prefix is /usr/local/php/var
error_log = log/php_error_log
[www]
catch_workers_output = yes

2.修改php.ini中配置,没有则增加:

复制代码 代码如下:

log_errors = On
error_log = "/usr/local/php/var/log/error_log"
error_reporting=E_ALL&~E_NOTICE

3.重启php-fpm

当PHP执行错误时就能看到错误日志在”/usr/local/lnmp/php/var/log/php_error_log”中了

如果出现:

复制代码 代码如下:

[[email protected] etc]# service php-fpm restart
Gracefully shutting down php-fpm . done
Starting php-fpm [17-Apr-2014 18:40:52] ERROR: [/usr/local/php/etc/php-fpm.conf:5] unknown entry ‘catch_workers_
[17-Apr-2014 18:40:52] ERROR: failed to load configuration file ‘/usr/local/php/etc/php-fpm.conf‘
[17-Apr-2014 18:40:52] ERROR: FPM initialization failed
 failed

那请在第一步的时候,认真将配置写入相对应的组中,不然就出现上面的:

复制代码 代码如下:

ERROR: [/usr/local/php/etc/php-fpm.conf:5] unknown entry ‘catch_workers_output‘

最后看看效果:

时间: 2024-10-05 05:48:48

php-fpm打开错误日志的配置的相关文章

PHP 错误日志/安全配置

PHP 常用配置 /php/bin/php -i | head Loaded Configuration File => /php/etc/php.ini 查看php配置目录 vim /usr/local/php/etc/php.ini # 设置时区为亚洲/重庆 date.timezone = 'Asia/Chongqing' 主配置文件定义php时区 php配置文件内关闭危险函数 vim /php/etc/php.ini # 为了安全考虑,加入禁用的模块名称 disable_functions

tomcat学习笔记 - 错误日志 - NetBeans配置tomcat出错(转)

转载自:http://blog.sina.com.cn/s/blog_709548200102vgy4.html 问题描述: 新安装的NetBeans8.0.2,安装过程中还一体化安装了内含的Tomcat8.0.15,打开NetBeans运行web工程失败,控制台输出错误信息如下: 启动 Tomcat 失败.*****\build-impl.xml:1164: 部署错误: 启动 Tomcat 失败.有关详细信息, 请查看服务器日志.构建失败 (总时间: 4秒) Tomcat日志显示: '127.

MySQL 错误日志(Error Log)

同大多数关系型数据库一样,日志文件是MySQL数据库的重要组成部分.MySQL有几种不同的日志文件,通常包括错误日志文件,二进制日志,通用日志,慢查询日志,等等.这些日志可以帮助我们定义mysqld内部发生的事情,数据库性能故障,记录数据的变更历史,用户恢复数据库等等.本文主要描述错误日志文件. 1.MySQL日志文件系统的组成   a.错误日志:记录启动.运行或停止mysqld时出现的问题.   b.通用日志:记录建立的客户端连接和执行的语句.   c.更新日志:记录更改数据的语句.该日志在M

查看数据库错误日志的位置

mysql> show variables like "log_error"; +---------------+------------------------------+ | Variable_name | Value | +---------------+------------------------------+ | log_error | /app/log/mysql/error.log | +---------------+--------------------

PHP错误日志控制(display_errors和error_reporting)

在php学习中display_errors和error_reporting是两个非常重要的参数,在程序调试过程中缺少不了,下面就来介绍一下这两个错误日志的配置如何开启和关闭: 我们知道在产品的生产环境肯定是不能够显示错误的,于是:php.ini中将 display_errors = On 改为display_errors = Off或者 ini_set('display_errors',0); 其次,我们知道php的错误级别是由error_reporting控制,但是有很多人在生产环境关闭了错误

nginx日志之错误日志及访问日志及日志分割

一.nginx错误日志 nginx软件会把自身运行的故障信息及用户访问的日志信息记录到指定的日志文件里 一般在nginx.conf配置文件第二行添加:error_log    logs/error.log    error : ↓                  ↓                  ↓ 关键字             日志文件       日志级别 其实如果不添加这行的话,默认就是这样 关于日志级别: 错误日志常见的级别有 :debug | info|notice | war

Nginx 错误日志配置

错误日志可以在 nginx.conf 的全局配置(也就是main区块)中添加,也可以在不同虚拟主机配置文件中的全局配置中单独添加 语法:error_log  file  level: // error_log 是固定的关键字,file 是错误日志的存放路径,level 是日志等级 配置实例: worker_processes 1; user nobody nobody; pid /usr/local/nginx/nginx.pid;error_log logs/error.log error;

LAMP(php动态扩展模块,httpd的rewrite,php错误日志,php.ini配置详解)

一.php动态扩展模块 比如我们需要用到php一个模块,恰好他没有这个模块.我们需要编一个.so出来 ?/usr/local/php/bin/php -m //查看模块 ? 下面安装一个redis的模块 ? cd /usr/local/src/ ? wget https://codeload.github.com/phpredis/phpredis/zip/develop ? mv develop phpredis-develop.zip ? unzip phpredis-develop.zip

第五篇 SQL Server代理理解代理错误日志

本篇文章是SQL Server代理系列的第五篇,详细内容请参考原文. 正如这一系列的前几篇所述,SQL Server代理作业是由一系列的作业步骤组成,每个步骤由一个独立的类型去执行.在第四篇中我们看到,SQL Server代理可以通过数据库邮件发送通知.如果有什么不正确的,你必须查看数据库邮件日志.在这一篇,你将学习如何理解和查看所有相关的SQL Server代理错误日志.你将回顾最常见的错误信息,掌握哪些信息需要你采取行动,哪些信息只是单纯的信息而已.一旦你理解错误日志,在处理SQL Serv