实现Nginx中使用PHP-FPM时记录PHP错误日志的配置方法
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
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”中了
[root@localhost 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'
最后看看效果:
相关推荐
-
PHP使用Nginx实现反向代理
一.代理服务器 1.什么是代理服务器 代理服务器,客户机在发送请求时,不会直接发送给目的主机,而是先发送给代理服务器,代理服务接受客户机请求之后,再向主机发出,并接收目的主机返回的数据,存放在代理服务器的硬盘中,再发送给客户机. 2.为什么要使用代理服务器 1)提高访问速度 由于目标主机返回的数据会存放在代理服务器的硬盘中,因此下一次客户再访问相同的站点数据时,会直接从代理服务器的硬盘中读取,起到了缓存的作用,尤其对于热门站点能明显提高请求速度. 2)防火墙作用 由于所有的客户机请求都必须通过代
-
Windows下Nginx+PHP5的安装与配置方法
以下是我在 Windows 2003 安装中 Nginx 和 PHP5.2 的步骤,但windows版本的nginx性能要比Linux/Uninx版本的Nginx差太多. 安装 PHP5首先,从 http://www.php.net/downloads.php 下 载最新的 PHP5.2.9-2 Windows 版本,解压至 C:\php,把压缩包中的 php.ini-recommended,更名为 php.ini,然后打开修改几个选项: error_reporting = E_ALLdispl
-
安装配置php-fpm来搭建Nginx+PHP的生产环境
nginx本身不能处理PHP,它只是个web服务器,当接收到请求后,如果是php请求,则发给php解释器处理,并把结果返回给客户端. nginx一般是把请求发fastcgi管理进程处理,fascgi管理进程选择cgi子进程处理结果并返回被nginx 本文以php-fpm为例介绍如何使nginx支持PHP 一.编译安装php-fpm 什么是PHP-FPM PHP-FPM是一个PHP FastCGI管理器,是只用于PHP的,可以在 http://php-fpm.org/download下载得到. P
-
nginx调用php-fpm出错解决方法和nginx配置详解
装完了nginx和php-5.5,配置好了nginx调用php后,就开始启动php-fpm. 使用下面的命令 复制代码 代码如下: /usr/local/php/sbin/php-fpm 就可以启动了. 在nginx的目录中创建个php的检测脚本index.php 结果在打开http://localhost/index.php 悲剧的发现居然无法打开 .查看日志文件,看了下报错原因 复制代码 代码如下: 2013/07/01 22:34:26 [error] 3214#0: *64 FastCG
-
CentOS 6.4安装配置LNMP服务器(Nginx+PHP+MySQL)
准备篇 1.配置防火墙,开启80端口.3306端口vi /etc/sysconfig/iptables-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT #允许80端口通过防火墙-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT #允许3306端口通过防火墙 备注:很多网友把这两条规则添加到防火墙配置的最后一行,导致防火墙启动失败, 正确
-
Nginx和PHP-FPM的启动、重启、停止脚本分享
服务器上的Nginx和PHP都是源码编译安装的,不像ubuntu一样有自带service启动脚本,所以不支持类似以前的nginx (start|restart|stop|reload)了.自己动手丰衣足食.以下脚本应该在RHEL, Fedora, CentOS下都适用. 一.Nginx启动脚本/etc/init.d/nginx 复制代码 代码如下: #!/bin/bash # # Startup script for Nginx - this script starts and stops th
-
Nginx 安装笔记(含PHP支持、虚拟主机、反向代理负载均衡)
系统环境:RHEL5 [ 2.6.18-8.el5xen ] 软件环境: nginx-0.7.17 lighttpd-1.4.20.tar.gz pcre-6.6-1.1 pcre-devel-6.6-1.1 php-5.1.6-5.el5 参考下载地址: http://sysoev.ru/nginx/nginx-0.7.17.tar.gz (最新稳定版为0.6.32) http://www.lighttpd.net/download/lighttpd-1.4.20.tar.gz #######
-
CentOS+Nginx+PHP+MySQL详细配置(图解)
一.安装MySQL 目前web服务器已经很少有跑静态页面的,如果要跑动态网站那当然就离不开数据库,虽然在以前文章中有写MySQL是怎么安装的,但是感觉好久没装MySQL,现在只把步骤贴出来,就不做过多的讲解了 #useradd mysql #tar zxvf mysql-5.0.40.tar.gz #cd mysql-5.0.40 #./configure --prefix=/usr/local/mysql #make && make install #/usr/local/mysql/b
-
mac下安装nginx和php
一.前话:1.1.环境选择:重新在mac上配置php,原本mac上就自带有apach.php以及pgsql,如果图简单的话,直接用就可以了,不过在安装前我仔细思考了一下几个问题:选apache还是nginx:两个我了解的都比较少,相对而言我接触nginx比较多,服务器用的也是nginx,没办法谁叫nginx负载高呢.为了更好的接触nginx的环境,我决定还是统一下环境,方便今后使用,这是这次的主要关键:安装php:Mac os自带了php,好像是5.3.8,版本比较落后,不过这不碍事,因为以前我
-
nginx安装及配置支持php的教程(全)
pcre-7.8.tar.gz 正则表达式下载地址:ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/ nginx-0.7.26.tar下载地址:http://www.nginx.net/ php-5.2.6.tar.bz2下载地址:http://www.php.net/releases/ php-5.2.6-fpm-0.5.9.diff.gz php-fpm是为PHP打的一个FastCGI管理补丁,可以平滑变更php.ini
随机推荐
- windows下部署免费ssl证书(letsencrypt)的方法
- 图文演示Photoshop调出金碧辉煌的色彩第1/2页
- 使用Linux正则表达式灵活搜索文件中的文本
- struts1登录示例代码_动力节点Java学院整理
- url地址自动加#号问题说明
- NetCore WebSocket即时通讯示例
- JavaScript中数组slice和splice的对比小结
- asp CutStrX字符串截取函数(过滤全部HTML标记)
- js实现鼠标跟随运动效果
- jquery Banner轮播选项卡
- Windows操作系统保密小技巧
- Android ListView 子控件onClick正确获取position的方法
- js+html5实现页面可刷新的倒计时效果
- 使用windows控制台调试服务的方法
- 三层交换机的智能流处理技术
- springboot+thymeleaf国际化之LocaleResolver接口的示例
- React路由管理之React Router总结
- jsp实现剪子石头布小游戏
- django数据关系一对多、多对多模型、自关联的建立
- 详解微信图片防盗链“此图片来自微信公众平台 未经允许不得引用”的解决方案
其他
- js JSON输出格式化数字字符串,保留两位小数
- vue中如何解决延迟问题
- protobuf库无法解析的外部符号
- 自己写简单的2d物理引擎
- net core api启动
- idea编辑shell识别
- V-model传select失败
- 小程序 外链图片获取宽高
- vue组件的template的div的高度100%无效
- extjs grid设置列日期显示格式
- cmd 连接 服务器
- 输入大写英文字母,输出高度为n的金字塔python
- laravel调用百度翻译接口
- pyqt5 textedit 多线程
- python直连hive kerberos认证
- nginx url传参
- gateway如何处理feign异常
- spring-boot-starter-parent的作用
- 微信小程序hideen无效
- BaseTypeHandler 把null转成空list