大错社区

 找回密码
 免费注册

QQ登录

只需一步,快速开始

[Nginx] connect() to unix:/tmp/php-cgi.sock failed

[复制链接]
admin 发表于 2018-11-17 10:43:59 | 显示全部楼层 |阅读模式

页面突然显示502 看了看nginx日志显示这个

connect() to unix:/tmp/php-cgi.sock failed (11: Resource temporarily unavailable) while connecting to upstream

sock 资源暂时不可用,肯定是和sock有关

有三个解决方案

第一个把php-fpm配置文件的listen.backlog参数从-1该为1024或者4096 两个参数的差别我暂时还不知道。

然后reload一下。

第二个方法就是不用sock方法,用TCP

把php-fpm的配置文件中

把listen = /tmp/php-cgi.sock
改成listen = 127.0.0.1:9000

nging配置文件中

把fastcgi_pass  unix:/tmp/php-cgi.sock;
改成fastcgi_pass  127.0.0.1:9000;

php-fpm和nginx都reload一下,应该就OK了

第三种

用两个php-fpm 用两个sock nginx负载均衡

复制一份配置文件

修改里边的pid sock

cp /usr/local/php/etc/php-fpm.conf cp /usr/local/php/etc/php-fpm2.conf

[global]

pid = /usr/local/php/var/run/php-fpm2.pid

error_log = /usr/local/php/var/log/php-fpm2.log

log_level = notice


[www]

listen = /tmp/php-cgi2.sock


复制一个启动文件,也修改相关的信息

cp /etc/init.d/php-fpm /etc/init.d/php-fpm2

php_fpm_BIN=${exec_prefix}/sbin/php-fpm

php_fpm_CONF=${prefix}/etc/php-fpm2.conf

php_fpm_PID=${prefix}/var/run/php-fpm2.pid

启动

/etc/init.d/php-fpm2 start


nginx 配置文件

增加 upstream模块

upstream backend{

   server unix:/tmp/php-cgi.sock;

   server unix:/tmp/php-cgi2.sock;

  }

把fastcgi_pass  unix:/tmp/php-cgi.sock;

改成       fastcgi_pass  backend;

重新加载

/etc/init.d/nginx reload


您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

QQ|Archiver|手机版|小黑屋|大错网络

GMT+8, 2019-7-21 00:11 , Processed in 0.081594 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表