码迷,mamicode.com
首页 > 其他好文 > 详细

nginx 502 解决方法

时间:2017-10-17 12:17:20      阅读:136      评论:0      收藏:0      [点我收藏+]

标签:原因   方式   local   /usr   nmp   cal   资源   log   权限   

1. 配置错误
因为 nginx 找不到 php-fpm 了或者 socket 文件权限不对,所以报错,一般是 fastcgi_pass 后面的路径配置不当,后面可以是 socket 或者是 ip:port,从 php5.4 版本之后如果使用 socket 方式,默认权限给的比较低,所以需要把监听权限改为 777,对应配置为 listen.mode=0777


2. 资源耗尽
lnmp 架构在处理 php 时,nginx 直接调取后端的 php-fpm 服务,如果 nginx 的请求量偏高,我们又没有给 php-fpm 配置足够的子进程,那么 php-fpm 就会资源耗尽,一旦资源耗尽 nginx 找不到 php-fpm 就会出现 502 错误,解决方案:去调整 php-fpm.conf 中的 pm.max_children 数值,使其增加,但是也不能无限增加,毕竟资源有限,一般 4G 内存机器如果跑 php-fpm 和 nginx ,不跑 mysql 可以设置为 150,8G 为 300 以此类推


3. 除了上面的两种错误还有其他的原因很少有,我们可以借助 nginx 的错误日志来进行排查 vim /usr/local/nginx/logs/nginx_error.log  我们也可以给日志定义级别 vim /usr/local/nginx/conf/nginx.conf 找到 error_log,默认是 crit 最严谨的就行,也可以改成 debug 显示的信息最全面,但是很容易撑爆我们的磁盘。

 

 

 

 

 

      

nginx 502 解决方法

标签:原因   方式   local   /usr   nmp   cal   资源   log   权限   

原文地址:http://www.cnblogs.com/pzk7788/p/7680293.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!