VPS侦探论坛

标题: LNMP一键安装包的Nginx 502 Bad Gateway错误可能原因及解决方法 [打印本页]

作者: licess    时间: 2010-4-19 15:29
标题: LNMP一键安装包的Nginx 502 Bad Gateway错误可能原因及解决方法
第一种原因:安装lnmp一键安装包时php没安装成功而出现502 Bad Gateway,从0.9开始只要安装成功或失败都就会有提示。没安装成功一般原因是在安装php前,脚本中某些lib包可能没有安装上,造成php没有编译安装成功。可以看一下是否存在/usr/local/php/sbin/php-fpm ,如果没有肯定没安装成功
解决方法:
可以尝试根据lnmp一键安装包中的脚本手动安装一下,看看是什么错误导致的,在网上搜索一下,或者把错误信息发上来。如果实在不会提供按http://lnmp.org/install.html这个安装时的lnmp.log日志文件(可以用winscp登陆下载lnmp.log,压缩并上传到本论坛),没有错误信息我们没法说什么原因。本方法只限于lnmp没安装成功,只要lnmp安装成功了这一项就没可能。

第二种原因:
在php.ini里,eaccelerator配置项一定要放在Zend Optimizer配置之前,否则也可能引起502 Bad Gateway。php一些模块之间也可能会造成502,如Zend GuardLoader与Opcache,ioncube与Zend GuardLoader等,一般可以通过注释掉一个然后重启php-fpm,然后看是否还502进行排除。

第三种原因:
在安装好使用过程中出现502问题,一般是因为默认php-cgi进程是5个,可能因为phpcgi进程不够用而造成502,需要修改/usr/local/php/etc/php-fpm.conf 将其中的max_children值适当增加,如果php已升级到5.3.*以上且使用的是dynamic模式,需要调整pm.min_spare_servers和pm.max_spare_servers的值适当增加。最大值可以按内存xxMB/2/20 的整数来算(内存以MB为单位进行计算,/ 为除,取整数),最小值可以按内存/2/40 的整数来算,可以少点或多大,可以自己调整运行看看,同时pm.max_children也调整为和pm.max_spare_servers的值一样。
也有可能是max_requests值不够用。

第四种原因:
php执行超时,修改/usr/local/php/etc/php.ini 将max_execution_time 改为300 或直接改成0 不限制,同时还需要修改/usr/local/php/etc/php-fpm.conf 调整request_terminate_timeout的值
再/etc/init.d/php-fpm restart重启使其生效。

第五种原因:
磁盘空间不足,如mysql日志占用大量空间清理一下磁盘上的文件,有部分剩余空间,重启即可恢复。

第六种原因:
查看php-cgi或php-fpm进程是否在运行

第七种原因:
将nginx.conf里的
fastcgi_connect_timeout
fastcgi_send_timeout
fastcgi_read_timeout都调大一点。

第八种可能原因:https://bbs.vpser.net/thread-1654-1-1.html

九、不要按网上找到的教程随便修改配置,网上找到的可能会路径不一样,也可能会导致502或有相关的错误产生,例如网上其他的教程可以使用的是9000端口,而lnmp默认使用socket,你如果按网上的教程设置的端口或socket路径不一样那肯定100% 502无疑。

LNMP默认使用unix套接字,虚拟主机配置文件里 fastcgi_pass参数为unix:/tmp/php-cgi.sock; 需要确保/usr/local/php/etc/php-fpm.cnf 里的设置,php 5.2为<value name=“listen_address”>/tmp/php-cgi.sock</value> php 5.3及以上版本为listen = /tmp/php-cgi.sock ,同时/usr/local/nginx/conf/nginx.conf 及其/usr/local/nginx/conf/vhost/ 下面的虚拟主机配置里的fastcgi_pass  unix:/tmp/php-cgi.sock; 不一致就必定502。


有时候unix套接字模式下可能会502,可以尝试改成tcp/ip的方式 php 5.2下<value name=“listen_address”>/tmp/php-cgi.sock</value>替换为<value name=“listen_address”>127.0.0.1:9000</value>  php 5.3及以上版本listen = /tmp/php-cgi.sock替换为listen = 127.0.0.1:9000,nginx配置文件及虚拟主机配置文件里fastcgi_pass  unix:/tmp/php-cgi.sock;替换为fastcgi_pass  127.0.0.1:9000;  之后重启试试。


十、如果虚拟主机的日志文件过大也可能会造成502问题。
建议定期清空一下虚拟主机的日志文件。

十一、有些程序或者程序的主题有死循环或其他非常占用资源的代码也可能会引起502,可以尝试暂时注释掉可能的主机的配置文件,重启看看是否还会502。

十二、如果以上方法都试过,但还有时会出现502错,可以尝试添加502自动重启脚本:https://bbs.vpser.net/thread-1913-1-1.html

十三、实在找不到原因可以开启slowlog看看慢日志是否有相关有用的信息:https://bbs.vpser.net/viewthread.php?tid=10251&page=1&fromuid=3#pid30582

十四、升级PHP后出现502,可能php没升级成功。
如果是1.0之前的版本升级PHP到5.4或5.5后,可能是因为这个原因:https://bbs.vpser.net/thread-10763-1-1.html

十五、CentOS 6 下,wordpress访问后台、安装wp、安装插件报502错误的解决方法:https://bbs.vpser.net/thread-10767-1-1.html

PS:lnmp相关问题请在论坛反馈,QQ/旺旺上只提供付费代维代装及代购服务。
作者: ikewu83    时间: 2010-4-21 18:45
稍微记录一下方便使用linode的兄弟,本来在linode centos 32 上装lnmp1.2版,也出现502错误,后来装lnmp1.3版,就ok了
作者: aigeek    时间: 2010-4-22 16:14
主要是脚本中编译PHP前需要一些增强模组,这些可能影响编译成功,之前在PS3上试装就碰到这些问题。
作者: licess    时间: 2010-4-26 21:22
php.ini里,eaccelerator配置项一定要放在Zend Optimizer配置之前,否则也可能引起502 Bad Gateway
作者: hackin    时间: 2010-7-18 21:06
标题: 回复 1# 的帖子
删除eaccelerator的eaccelerator.iniw文件即可!
作者: kerneg    时间: 2010-7-19 09:31
D9 运行了一天很正常 半夜0点……502了
lnmp restart了一下
又好了…………神奇
作者: licess    时间: 2010-7-19 10:15
标题: 回复 6# 的帖子
可能是php-fpm的进程数有点少,稍微添加上几个实施。修改php-fpm.conf 里面的max_children 后面的值。
作者: kerneg    时间: 2010-7-20 20:54
很奇怪的毛病,我reinstall 了好几次os 分别是32位的 64位的centos
刚装好的时候 一切正常 重启 什么的也一切ok
但好景不长 一般第二天就会无法访问
restart后出现如下提示:


Reload LNMP...
Reload Nginx configure...
the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
configuration file /usr/local/nginx/conf/nginx.conf test is successful
Nginx program is reloding!
ERROR! MySQL manager or server PID file could not be found!
Starting MySQL.... ERROR! Manager of pid-file quit without updating file.
Shutting down php_fpm ................................... failed
Starting php_fpm  done


顺便说下,这是photonvps……D9的非常正常
作者: hackin    时间: 2010-7-21 01:55
权你们不要用php-fpm启动fastCGI了,换spawn-fcgi方式启动,我们公司现在全部换spawn-fcgi启动了
作者: qwert    时间: 2010-7-21 11:35
用 lnmp0.4 安裝包裝 Linode、2HOST Centos5 64位元,都沒問題。
昨天看到 RackVM 的便宜 OpenVPS 128MB,就買來玩玩。
但就是安裝不起來 (502 Bad Gateway)
不知是不是 128MB 太小的關係。
作者: putty    时间: 2010-10-12 01:53
原帖由 licess 于 2010-7-19 10:15 发表
可能是php-fpm的进程数有点少,稍微添加上几个实施。修改php-fpm.conf 里面的max_children 后面的值。


正解!
作者: lovegx999    时间: 2010-11-1 00:48
唉 也是遇到502错误
以前自己手动安装的就没遇到过



老是刷新出现502错误的
后来让我改了一下 就不会出现了

可以参考下我的文章:

Nginx 502 Bad Gateway错误的终极解决方案 彻底解决lnmp出现的502错误
http://itfis.com/post-212.html

[ 本帖最后由 lovegx999 于 2011-2-18 10:14 编辑 ]
作者: polar    时间: 2010-12-6 01:14
标题: 军哥,来解决我的问题一次嘛. 真的. 高难度.
修改完my.cnf 又出新问题了MYSQL 占用了60%

这些程序也占用好多啊

PING得通 网站打不开

这是刚才的问题 http://www.hostloc.com/thread-37882-1-1.html 刚解决完.现在又复发了.

用军哥的LNMP, 一直没事的啊. 郁闷 nginx.conf php-fpm my.cnf都按照网上的设置和坛友们回复的指导 修改了. 刚才还好好的 . 现在一下子MYSQL占用高 现在是NGINX
作者: polar    时间: 2010-12-6 01:14
标题: 军哥,来解决我的问题一次嘛. 真的. 高难度.
修改完my.cnf 又出新问题了MYSQL 占用了60%

这些程序也占用好多啊

PING得通 网站打不开

这是刚才的问题 http://www.hostloc.com/thread-37882-1-1.html 刚解决完.现在又复发了.

用军哥的LNMP, 一直没事的啊. 郁闷 nginx.conf php-fpm my.cnf都按照网上的设置和坛友们回复的指导 修改了. 刚才还好好的 . 现在一下子MYSQL占用高 现在是NGINX
作者: henter    时间: 2010-12-9 23:48
安装顺利 提示成功
但是php文件502

php mysql进程均未启动
也没有 /usr/local/php 和 /usr/local/mysql这两个目录
作者: kobebeef    时间: 2011-1-5 16:49
救命阿~
我試了好多次
從4.0安裝到5.0都失敗
502 Bad Gateway
幫我看一下阿~~

另外要怎麼查自已VPS主機是什麼系統的?
CentOS還是Debian/Ubuntu要怎麼查??

[ 本帖最后由 kobebeef 于 2011-1-5 18:24 编辑 ]
作者: mcharlie    时间: 2011-1-18 01:02
第五种原因:
被DDos或CC攻击了
作者: taoke    时间: 2011-1-19 01:37
也碰到了相同错误.

重装多次都不行.

请帮忙看看.
作者: dofine    时间: 2011-1-20 20:35
原帖由 henter 于 2010-12-9 23:48 发表
安装顺利 提示成功
但是php文件502

php mysql进程均未启动
也没有 /usr/local/php 和 /usr/local/mysql这两个目录
我和你的遭遇一模一样!
作者: 等你唯一    时间: 2011-2-10 21:38
新的0.6在ubuntu下还是
/root/lnmp: line 70: /usr/local/php/sbin/php-fpm: 没有那个文件或目录

我发现出现这个问题的普遍是Debian/Ubuntu,CentOS貌似不会遇到
作者: licess    时间: 2011-2-10 22:34
你用的哪家的vps?photonvpsyardvpsdiavpsyouburst、buyvm、dslinodethrust等debian/ubuntu都测试过没问题。
作者: 等你唯一    时间: 2011-2-10 22:48
我用的不是VPS,是自己的机器,2个本子,3个台式Ubuntu Desktop、Server、debian5、6 i386和X86_64都试过,都会出这样的问题,我试过的电脑都是Core2 的CPU, 型号各有区别,内存1-4G,显卡3家都有,只要是装CentOS,哪个机器都可以,debian/ubuntu就装不上PHP,我上传过我的几个Log,军大可以找找看。我只是实验并说一下,没有别的意思哈。

PS:我家的网速不是很快我是在Win下下载的Tar.gz的包解压到root目录的,不是wget 的。
PS2:我是装好系统后就更新,装一个opensshserver,之后就安装LNMP了,没有安装其他的,也没有做什么设置。

[ 本帖最后由 等你唯一 于 2011-2-10 22:54 编辑 ]
作者: luzhengfei    时间: 2011-2-27 22:45
今我用ubuntu10.04全新系统安装lnmp0.6,中间没有遇到暂停什么的错误,安装后输入localhost安装成功,只是运行php文件会出现502 bad getway错误,我发现很多人在ubuntu下出这个错误,希望楼主能够测试一下。这是神马情况。mysql也运行无误,同20楼情况一样。ubuntu下重启lnmp提示、/root/lnmp:line 48:/usr/local/php/sbin/php-fpm:No such file or directory,另外,我这是虚拟机上的linux

[ 本帖最后由 luzhengfei 于 2011-2-27 22:53 编辑 ]
作者: licess    时间: 2011-2-28 12:31
标题: 回复 23# 的帖子
请上传lnmp.log日志文件。或手动编译php,提供出错信息。
作者: luzhengfei    时间: 2011-3-2 13:33
呵呵。谢谢军哥了。已经解决。是autoconf版本问题。
作者: test96    时间: 2011-3-26 21:52
我的总是提示504 ,怎么回事?
[root@localhost ~]# ll /proc/23388/fd
total 0
lrwx------ 1 www www 64 Mar 26 11:38 0 -> socket:[160292]
l-wx------ 1 www www 64 Mar 26 11:38 1 -> pipe:[160325]
l-wx------ 1 www www 64 Mar 26 11:38 2 -> pipe:[160326]
lrwx------ 1 www www 64 Mar 26 12:52 3 -> socket:[160330]
lrwx------ 1 www www 64 Mar 26 12:52 4 -> /tmp/sess_2050d439f0e1a4adb642f57a14ec09d9
lrwx------ 1 www www 64 Mar 26 12:52 5 -> socket:[161268]
lr-x------ 1 www www 64 Mar 26 12:52 6 -> /home/wwwroot/html/test.cc/Runtime/compiled/side_notice.moban.php
lr-x------ 1 www www 64 Mar 26 12:52 7 -> /usr/local/eaccelerator_cache/b/d/eaccelerator-86746.9376051
[root@localhost ~]#
作者: test96    时间: 2011-3-26 21:53
php-cgi  cpu占100%
作者: test96    时间: 2011-3-26 21:57
file:///C:/Documents%20and%20Settings/Administrator/桌面/11.jpg
作者: test96    时间: 2011-3-26 22:00
file:///C:/Documents%20and%20Settings/Administrator/桌面/11.jpg
作者: test96    时间: 2011-3-26 22:09
图怎么发不上来,附件吧,

php-cgi cpu100%
作者: silentyear    时间: 2011-4-8 19:25
原帖由 luzhengfei 于 2011-3-2 13:33 发表
呵呵。谢谢军哥了。已经解决。是autoconf版本问题。


哥们儿,怎么个解决方案呢?能否告诉一下
作者: silentyear    时间: 2011-4-11 21:29
在ubuntu10.10 Destop和ubuntu10.04lts server版本上安装多次后,发现均报502错误,通过定位安装日志,发现我遇到的问题主要是autoconf版本过旧的原因。

打开ubuntu.sh,发现有如下2段脚本:


if [ -s autoconf-2.13.tar.gz ]; then
  echo "autoconf-2.13.tar.gz [found]"
  else
  echo "Error: autoconf-2.13.tar.gz not found!!!download now......"
  wget -c http://ftp.gnu.org/gnu/autoconf/autoconf-2.13.tar.gz
fi

cd $cur_dir
apt-get remove -y autoconf autoconf2.13 automake automake1.9
tar zxvf autoconf-2.13.tar.gz
cd autoconf-2.13/
./configure
make && make install
cd ../


对应调整成如下脚本:

if [ -s autoconf-2.68.tar.gz ]; then
  echo "autoconf-2.68.tar.gz [found]"
  else
  echo "Error: autoconf-2.68.tar.gz not found!!!download now......"
  wget -c http://ftp.gnu.org/gnu/autoconf/autoconf-2.68.tar.gz
fi

cd $cur_dir
apt-get remove -y autoconf autoconf2.68 automake automake1.9
tar zxvf autoconf-2.68.tar.gz
cd autoconf-2.68/
./configure
make && make install
cd ../

保存ubuntu.sh,然后运行之,最后安装成功。
以上仅是我个人安装过程中遇到的问题,贴出来,给遇到同样类似问题的朋友做个参考。
作者: jxyk2007    时间: 2011-4-17 20:09
标题: 回复 1# 的帖子
查看php-cgi进程
没有看到这个进程,怎么办啊?
怎么运行这个进程?谢谢
作者: jxyk2007    时间: 2011-4-18 09:17
make: *** [sapi/cgi/php-cgi] Error 1
作者: harmini    时间: 2011-4-23 21:45
在ubuntu10.10 Destop和ubuntu10.04lts server版本上安装多次后,发现均报502错误

打开ubuntu.sh,
更改  ./buildconf --force  为:
PHP_AUTOCONF=autoconf2.13 PHP_AUTOHEADER=autoheader2.13 ./buildconf --force

重新安装!

[ 本帖最后由 harmini 于 2011-4-23 21:47 编辑 ]
作者: snang    时间: 2011-4-27 22:15
502 Bad Gateway
作者: pascalcase    时间: 2011-5-10 14:59
lnmp7.0-full 在ubuntuserver 11.04 64bit上安装为什么总是php无法编译安装呢?改了autoconf的版本号也不行。
ubuntuserver保留的默认安装的包。
附件中是安装的日志文件。
求军哥帮忙看看吧。


21:39 2011.05.10 问题已经解决
不需要修改autoconf的版本号,2.13正确,修改后可能不正常。(仅LNMP0.7)
在php安装之前需要下面两条命令:
ln -s /usr/lib/x86_64-linux-gnu/libpng* /usr/lib/
ln -s /usr/lib/x86_64-linux-gnu/libjpeg* /usr/lib/

[ 本帖最后由 pascalcase 于 2011-5-10 21:41 编辑 ]
作者: yuweitaocn    时间: 2011-6-19 12:28
哈哈,其实看那一个服务器要是很不错的话,可以把那一个PHP运行脚本的时间设置为零啊。。很不错。
作者: qiqiy    时间: 2011-8-23 09:11
标题: 也是502错误,而且/usr/local/php/目录下只有etc,没有sbin目录
晕掉了,用的yardvps,centos5.5 64bit的,安装后一切启动正常,就是在启动php-fpm的时候提示/root/lnmp: line 46: /usr/local/php/sbin/php-fpm: No such file or directory
PHP-FPM start successfully!


查看了一下/usr/local/php目录只有etc文件夹,别的什么也没有啊,求求军哥帮助啊
作者: wzcm87    时间: 2011-9-29 23:08
标题: 域名访问不了
[warn]: conflicting server name "XX.COM" on 0.0.0.0:80, ignored
作者: wzcm87    时间: 2011-9-29 23:09
标题: 域名访问不了
域名访问不了[warn]: conflicting server name "XX.COM" on 0.0.0.0:80, ignored
作者: deardongdong    时间: 2011-10-8 09:35
=========================================================================
Manager for LNMPA V0.7  ,  Written by Licess
=========================================================================
LNMPA is a tool to auto-compile & install Nginx+MySQL+PHP+Apache on Linux
This script is a tool to Manage status of LNMPA
For more information please visit http://www.lnmp.org

Usage: /root/lnmpa {start|stop|reload|restart|kill|status}
=========================================================================
Stoping LNMP...
Nginx program is stop
httpd: Syntax error on line 343 of /usr/local/apache/conf/httpd.conf: Cannot load /usr/local/apache/modules/libphp5.so into server: /usr/local/apache/modules/libphp5.so: cannot open shared object file: No such file or directory
MySQL program is not runing!
Starting LNMPA...
Nginx start successfully!
httpd: Syntax error on line 343 of /usr/local/apache/conf/httpd.conf: Cannot load /usr/local/apache/modules/libphp5.so into server: /usr/local/apache/modules/libphp5.so: cannot open shared object file: No such file or directory
./lnmpa: line 46: /etc/init.d/mysql: No such file or directory
MySQL start successfully!
用CentOS的时候出错了。

[ 本帖最后由 deardongdong 于 2011-10-8 09:38 编辑 ]
作者: licess    时间: 2011-10-8 19:43
标题: 回复 42# 的帖子
nginx,apache。mysql都没安装成功,你上传的不是lnmp的安装日志
作者: dean    时间: 2011-10-10 10:26
姥姥,这个包重新装了不下五遍,终于抱起来。开始也是如下错误:Starting php_fpm /etc/init.d/php-fpm: 156: /usr/local/php/bin/php-cgi: not found查找了一下的确没有这个文件
我愣是不所有网上搜的到的解决方法都试了遍,现在我也不知道那种方法是正确的。反正就好了。





我的配置:
服务器参数
服务器域名/IP地址www.lnmp.org(173.230.148.251)
服务器标识Linux ubuntu-dean 2.6.38-11-generic #50-Ubuntu SMP Mon Sep 12 21:18:14 UTC 2011 i686
服务器操作系统Linux  内核版本: 2.6.38-11-generic服务器解译引擎nginx/0.8.54
服务器时间2011年10月10日 10:25:38可用空间(磁盘区)15.725 G
服务器语言zh-CN,zh;q=0.8服务器端口80
服务器主机名ubuntu-dean绝对路径/home/wwwroot
管理员邮箱系统平均负载0.26 0.57 0.66 2/380
服务器CPU及内存相关运行参数
CPU核数1 服务器已运行时间0天2小时6分钟
CPU型号Intel(R) Celeron(R) M CPU 520 @ 1.60GHzCPU二级缓存1024 KB系统Bogomips3199.75
内存使用状况物理内存:共 993.04 MB , 已用 962.016 MB , 空闲 31.027 MB, 使用率 96.88%

Cache化内存为 401.004 MB, 真实内存使用率为 56.49 %

SWAP区:共 1908 MB, 已使用 82.578 MB, 空闲 1825.418 MB, 使用率 4.33 %

作者: licess    时间: 2011-10-10 10:58
标题: 回复 44# 的帖子
php没有编译安装成功,建议手动安装看一下什么错误信息,提供了编译错误信息才能提供解决方法。
作者: wfqvip    时间: 2011-10-20 11:21
第六种情况如何解决????
作者: licess    时间: 2011-10-20 12:04
标题: 回复 46# 的帖子
没运行就运行
/etc/init.d/php-fpm start
作者: kxt314    时间: 2011-10-21 13:28
标题: ubuntu11.10
/usr/local/php$ /etc/init.d/php-fpm start
Starting php_fpm /etc/init.d/php-fpm: 156: /usr/local/php/bin/php-cgi: not found
failed

/usr/local/php$ ll
总用量 12
drwxr-xr-x  3 root root 4096 2011-10-21 13:13 ./
drwxr-xr-x 19 root root 4096 2011-10-21 13:14 ../
drwxr-xr-x  2 root root 4096 2011-10-21 13:13 etc/
作者: licess    时间: 2011-10-21 17:19
标题: 回复 48# 的帖子
php没有编译安装成功。
作者: love322093    时间: 2011-11-17 15:04
系统是Ubuntu server 11.10的
总是出现502错误,纠结了很长时间,发现把PHP编译的代码修改下居然好了,就是去掉php编译的 一个选项 --with-openssl ,不知道是什么原因,麻烦管理员看下日志。
[attach]621[/attach]
作者: love322093    时间: 2011-11-17 15:06
这个是修改后的日志文件,麻烦管理员看下是哪里出问题了
谢谢了
[attach]622[/attach]
作者: terryc007    时间: 2011-12-4 14:20
max_requests 多少值合适了? 我这服务器。。一旦访问的人多了。。。就502
作者: licess    时间: 2011-12-4 16:02
标题: 回复 52# 的帖子
可以5个5个的往上加着试试
作者: terryc007    时间: 2011-12-5 15:39
max_request 我设置为30124 max_children = 500
作者: terryc007    时间: 2011-12-5 16:17
2011/12/03 17:52:20 [crit] 31211#0: *29 connect() to unix:/tmp/php-cgi.sock failed (2: No such file or directory) while connecting to upstream, client:

说明php-cgi没有运行。。。请求量一旦在一个时间很多,php-cgi难道就挂了。。。
作者: leexee    时间: 2012-1-4 20:19
留个记号。我也遇到了。
不过重启一下就OK了。
我发现这个和硬盘和内存有关系。
我的自动备份设置为凌晨3点。
每次都是在凌晨3点多就出现了这个问题。
或许是我的硬盘满了。自动备份时无法完成压缩出现了这个问题。
又或者是我的内存太小。
我试了一下。
我在凌晨3点当VPS执行自动压缩备份时。
打开网站的速度非常慢。
我的网站数据2G。一键lnmp。linode512
作者: xjdata    时间: 2012-1-5 23:13
我必须顶一下这个帖子。

以前是  lnmp的升级为 lnmpa的兄弟  和上面所有的问题都没有关系, 使用/root/vhost.sh 将所有的虚拟主机重新添加一遍即可。我折腾了6个小时!!!
作者: jimmyyem    时间: 2012-1-11 11:16
标题: 我这里也遇到了php 502 错误
错误信息如下:

Starting php_fpm /etc/init.d/php-fpm: line 61: /usr/local/php/bin/php-cgi: No such file or directoryfailed
作者: licess    时间: 2012-1-11 11:35
标题: 回复 58# 的帖子
可能php是没有编译安装成功
作者: xiaoneng    时间: 2012-4-27 14:34
标题: 我的出现502 Bad Gateway,跪求解决啊 ubuntu系统
2012/04/24 15:23:28 [crit] 23841#0: *1 connect() to unix:/tmp/php-cgi.sock failed (2: No such file or directory) while connecting to upstream, client: 127.0.0.1, server: www.lnmp.org, request: "GET /phpinfo.php HTTP/1.1", upstream: "fastcgi://unix:/tmp/php-cgi.sock:", host: "localhost", referrer: "http://localhost/"
2012/04/24 15:23:34 [crit] 23841#0: *1 connect() to unix:/tmp/php-cgi.sock failed (2: No such file or directory) while connecting to upstream, client: 127.0.0.1, server: www.lnmp.org, request: "GET /phpmyadmin/ HTTP/1.1", upstream: "fastcgi://unix:/tmp/php-cgi.sock:", host: "localhost", referrer: "http://localhost/"
2012/04/27 12:06:02 [crit] 1122#0: *1 connect() to unix:/tmp/php-cgi.sock failed (2: No such file or directory) while connecting to upstream, client: 127.0.0.1, server: www.lnmp.org, request: "GET /phpinfo.php HTTP/1.1", upstream: "fastcgi://unix:/tmp/php-cgi.sock:", host: "localhost", referrer: "http://localhost/"
2012/04/27 12:11:15 [crit] 1122#0: *4 connect() to unix:/tmp/php-cgi.sock failed (2: No such file or directory) while connecting to upstream, client: 192.168.1.76, server: www.lnmp.org, request: "GET /phpinfo.php HTTP/1.1", upstream: "fastcgi://unix:/tmp/php-cgi.sock:", host: "192.168.1.82", referrer: "http://192.168.1.82/"
2012/04/27 12:14:11 [crit] 1122#0: *7 connect() to unix:/tmp/php-cgi.sock failed (2: No such file or directory) while connecting to upstream, client: 192.168.1.76, server: www.lnmp.org, request: "GET /phpinfo.php HTTP/1.1", upstream: "fastcgi://unix:/tmp/php-cgi.sock:", host: "192.168.1.82", referrer: "http://192.168.1.82/"
2012/04/27 14:05:57 [emerg] 24217#0: bind() to 0.0.0.0:80 failed (98: Address already in use)
2012/04/27 14:05:57 [emerg] 24217#0: bind() to 0.0.0.0:80 failed (98: Address already in use)
2012/04/27 14:05:57 [emerg] 24217#0: bind() to 0.0.0.0:80 failed (98: Address already in use)
2012/04/27 14:05:57 [emerg] 24217#0: bind() to 0.0.0.0:80 failed (98: Address already in use)
2012/04/27 14:05:57 [emerg] 24217#0: bind() to 0.0.0.0:80 failed (98: Address already in use)
2012/04/27 14:05:57 [emerg] 24217#0: still could not bind()
2012/04/27 14:07:04 [crit] 1122#0: *9 connect() to unix:/tmp/php-cgi.sock failed (2: No such file or directory) while connecting to upstream, client: 192.168.1.76, server: www.lnmp.org, request: "GET /phpinfo.php HTTP/1.1", upstream: "fastcgi://unix:/tmp/php-cgi.sock:", host: "192.168.1.82", referrer: "http://192.168.1.82/"
2012/04/27 14:07:09 [crit] 1122#0: *9 connect() to unix:/tmp/php-cgi.sock failed (2: No such file or directory) while connecting to upstream, client: 192.168.1.76, server: www.lnmp.org, request: "GET /phpmyadmin/ HTTP/1.1", upstream: "fastcgi://unix:/tmp/php-cgi.sock:", host: "192.168.1.82", referrer: "http://192.168.1.82/"
2012/04/27 14:14:41 [crit] 1122#0: *12 connect() to unix:/tmp/php-cgi.sock failed (2: No such file or directory) while connecting to upstream, client: 192.168.1.76, server: www.lnmp.org, request: "GET /phpmyadmin/ HTTP/1.1", upstream: "fastcgi://unix:/tmp/php-cgi.sock:", host: "192.168.1.82", referrer: "http://192.168.1.82/"
2012/04/27 14:15:06 [crit] 1122#0: *14 connect() to unix:/tmp/php-cgi.sock failed (2: No such file or directory) while connecting to upstream, client: 127.0.0.1, server: www.lnmp.org, request: "GET /phpinfo.php HTTP/1.1", upstream: "fastcgi://unix:/tmp/php-cgi.sock:", host: "localhost", referrer: "http://localhost/"
2012/04/27 14:17:24 [crit] 1122#0: *16 connect() to unix:/tmp/php-cgi.sock failed (2: No such file or directory) while connecting to upstream, client: 127.0.0.1, server: www.lnmp.org, request: "GET /p.php HTTP/1.1", upstream: "fastcgi://unix:/tmp/php-cgi.sock:", host: "localhost"
作者: licess    时间: 2012-4-27 16:22
只看日志是php-fpm 没运行,执行/etc/init.d/php-fpm start 试试,其他没法说

也有可能php根本就没安装成功

只有这些信息只能说这些
作者: cxj273    时间: 2012-5-6 18:05
标题: 回复 61# 的帖子
我执行你这个命令之后,502错误不见了,可是过了一会儿又是502,再执行那个命令又解决问题了。
这是什么原因啊?
作者: xueradium    时间: 2012-5-7 10:15
标题: 502 Bad Gateway
操作系统:ubuntu 12.04  64bit日志里面说没有发现php安装包错误原因是不是没有安装上php?除了手动编译外还有其他方法吗?
作者: bobofan1995    时间: 2012-5-10 15:16
留个记号…………好查阅……
作者: fly785041    时间: 2012-7-3 19:23
标题: 看来nginx还是不太稳定
看来nginx还是不太稳定啊。
作者: v1zw    时间: 2012-9-14 12:13
安装好用了几天,就发现系统负载超级高,uptime达到30多,系统卡死,最后自动重启了,现在不清楚是什么原因,反正把php-fpm停了以后,负载就降下来了。
但是网站并没有多少流量,应该不是php-fpm进程不够造成的啊?
作者: houseme    时间: 2012-11-4 09:21
  1. httpd: Syntax error on line 343 of /usr/local/apache/conf/httpd.conf: Cannot load /usr/local/apache/modules/libphp5.so into server: /usr/local/apache/modules/libphp5.so: cannot restore segment prot after reloc: Permission denied
  2. Remove old startup files and Add new startup file.....
  3. error reading information on service php-fpm: No such file or directory
复制代码
军哥  这个是PHP没有编译好吗,这个是字安装apache。sh 之后出现的 在nginx下面是正常的啊  没有出现502 错误哦  谢谢!

找到了解决办法
httpd: Syntax error on line 53 of /usr/local/apache/conf/httpd.conf的解决方法  在终端上输入以下命令:# setenforce 0

# chcon -c -v -R -u system_u -r object_r -t textrel_shlib_t /usr/local/apache/modules/libphp5.so
(注:/usr/local/apache为apache的安装目录)

# service httpd restart
# setenforce 1


[ 本帖最后由 houseme 于 2012-11-4 09:26 编辑 ]
作者: netcat    时间: 2012-11-14 17:26
原帖由 licess 于 2010-7-19 10:15 发表
可能是php-fpm的进程数有点少,稍微添加上几个实施。修改php-fpm.conf 里面的max_children 后面的值。
这个值缺省是5,好像太小了,压力测试时,20个并发就挂了,后来我把这个值加到1000,压力测试并发3000都不会挂了。
作者: onlyou8    时间: 2013-1-9 17:21
标题: 安装lnmp正常,再加个apache之后就502
安装lnmp正常,再加个apache之后就502
我是8G的centos5.8 64位系统,按照lnmp的安装方法安装了lnmp之后,访问ip是正常的。
然后我又执行了 ./apache.sh 安装完之后。访问ip就是502 了


/etc/init.d/httpd:line98:/usr/local/apache/bin/httpd: No such file or directory

[ 本帖最后由 onlyou8 于 2013-1-9 17:28 编辑 ]
作者: onlyou8    时间: 2013-1-9 17:31
标题: 我这出现问题,要重新装的话,要怎么处理
我装了LNMP之后正常, 又执行./apache.sh装了APACHE就502了。
现在找不到办法,想把LNMPA都卸载了然后重新装。我看到有个uninstall.sh,是不是执行 ./uninstall.sh 就可以卸载了 APACHE有卸载吗。
作者: a219549    时间: 2013-2-4 11:37
nginx就是有这个毛病,我装好的一个,只是放了探针竟然502了
作者: ywq111    时间: 2013-3-8 21:49
还有一个可能的原因:php-fpm的设置:
request_terminate_timeout
这个参数非常重要。。。
作者: brooks2008    时间: 2013-3-20 14:57
标题: 军歌,我现在的服务器有的时候报502错误,怎么侦测问题根源呀
军歌,我现在的服务器有的时候报502错误,怎么侦测问题根源呀
作者: linuxoffer    时间: 2013-3-30 17:46
标题: 楼主错了
第四种原因:
php执行超时,修改/usr/local/php/etc/php.ini 将max_execution_time 改为300

楼主第四种原因错了
参数 max_execution_time 可以设置 PHP 脚本的最大执行时间,但是,在 php-cgi(php-fpm) 中,该参数不会起效。真正能够控制 PHP 脚本最大执行时间的是 php-fpm.conf 配置文件中的以下参数:
<value name="request_terminate_timeout">30s</value>
作者: Allen    时间: 2014-1-20 10:08
标题: Debian7.1安装lnmp失败,求大神帮忙看看什么问题
系统:Debian7.1硬件:Cubietruck ,CPU:ARM A20
附件为安装信息,求大神们帮忙看看,
Ubuntu12.04安装也是失败
作者: licess    时间: 2014-1-20 14:10
标题: 回复 75# 的帖子
arm的不支持,论坛里有个研究过的,你找找试试
作者: ngugui    时间: 2014-1-20 19:53
标题: 我LNMP一建安装后,PHP出错了,手动安装的时候出现这个提示,这么整
=========================================================================
Install PHP 2.17 for LNMP with PHP 5.3.*,  Written by Licess
=========================================================================
LNMP is tool to auto-compile & install Nginx+MySQL+PHP on Linux

For more information please visit http://www.lnmp.org/
=========================================================================
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/memcache.so' - /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/memcache.so: cannot open shared object file: No such file or directory in Unknown on line 0
Current PHP VersionHP 5.2.17p1 (cli) (built: Jan 20 2014 15:17:37)
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2010 Zend Technologies
    with Zend Optimizer v3.3.9, Copyright (c) 1998-2009, by Zend Technologies
Do NOT need to install PHP 5.2.17!
作者: licess    时间: 2014-1-20 21:38
标题: 回复 77# 的帖子
memcache扩展没安装成功,手动安装看错误或记录下完整的安装日志,上传日志
作者: 独孤羽    时间: 2014-2-25 15:01
军哥,求助。。

我安装了一键安装包,然后搭建和dz论坛,其他都没有问题,只是没法用新浪微博登录,会出现 502bad

502 Bad Gatewaynginx/1.0.15

请问下有没有解决的办法呢?
作者: zxz1004    时间: 2014-3-6 16:40
location ~ ^(.+.php)(.*)$ {
                        root       /home/wwwroot/xxx;

                        fastcgi_index   index.php;
                        fastcgi_split_path_info ^(.+.php)(.*)$;
                        fastcgi_param   SCRIPT_FILENAME $document_root$fastcgi_script_name;
                        fastcgi_param   PATH_INFO               $fastcgi_path_info;
                        fastcgi_param   PATH_TRANSLATED $document_root$fastcgi_path_info;
                        fastcgi_pass    unix:/tmp/php-fpm.sock;
                        include fastcgi_params;
                }

一直502  如何解决啊 军哥
作者: zhouht    时间: 2014-3-24 21:35
标题: 安装lnmp时报错 checking ...
安装lnmp时报错 checking ...  



cat /etc/issue  所得心系为:Ubuntu 13.04 \n \l


cpu 为32位 , Ubuntu为32位
作者: manxingjiang    时间: 2014-10-8 09:19
标题: 回复 1# 的帖子
CentOS release 6.3 安装lnmp集成包IE无法获取session值,其他浏览器可以,为什么?
作者: urldnscn    时间: 2014-12-12 22:12
尚未遇到此问题
作者: hello    时间: 2015-6-6 00:11
如果能根据不同环境给出一些相对应的修改参数就好了
作者: ingky    时间: 2015-6-18 16:03
学习下哦新手多多支持啊!
作者: sutking    时间: 2015-6-26 12:45
可否帮我看下我的服务器502问题在哪和怎么解决?系统是centos6.6,64位。
多谢!
作者: sxb2015    时间: 2015-8-3 10:42
标题: Lnmp-
虚拟云上装的64位的CentOS-7-x86_64-DVD-1503-01lnmp1.1-full.tar.gz安装不成功
作者: licess    时间: 2015-8-3 14:56
标题: 回复 87# 的帖子
只有dvd源无法安装,必须联网有网络源才行
作者: iswordfish    时间: 2015-11-28 00:55
从2012年linodo512开始用军哥lnmp,然后digitalocean,然后国内阿里云等,首先感谢一下军哥。
502这个问题一直都存在,之前无非是Mysql日志满了删除掉,可现在,升级到1.2后,发现502、504成了日常作业了。
为此,换了centos,unbuntn等不同系统,尝试了该置顶帖的几乎所有方法(大部分就是改配置重启)——当然这些回答虽然都是实践,但也莫衷一是,但问题还如影随从,每次,莫名其妙就是502.504跳出来,搜索下来,发现有问题的朋友还真不少,真心希望军哥好好理一理,给个比较指导性的建议。。
作者: neozhongwei    时间: 2016-5-7 09:10
标题: lnmp1.2安装完毕后打不开phpmyadmin
按照教程安装lnmp1.2,安装完毕后nginx页面能打开,在ip地址后加phpmyadmin打不开phpmyadmin,系统是centos7,附安装日志
作者: neozhongwei    时间: 2016-5-7 09:11
标题: lnmp1.2安装完毕后打不开phpmyadmin
按照教程安装lnmp1.2,安装完毕后nginx页面能打开,在ip地址后加phpmyadmin打不开phpmyadmin,系统是centos7,附安装日志
作者: 森林生灵    时间: 2016-7-16 16:17
在配置Nginx的http目录访问认证访问目录总是502,在网上找了一圈未果,最后又找了回来,原来是fastcgi_pass的问题,非常感谢。
作者: ldq1101    时间: 2017-3-9 09:21
标题: 刚装的环境,一直是502,访问不了php文件。
[09-Mar-2017 00:09:25] ERROR: An another FPM instance seems to already listen on /tmp/php-cgi.sock
[09-Mar-2017 00:09:25] ERROR: FPM initialization failed
[09-Mar-2017 09:10:27] NOTICE: Finishing ...
[09-Mar-2017 09:10:27] NOTICE: exiting, bye-bye!
[09-Mar-2017 09:10:28] NOTICE: fpm is running, pid 18980
[09-Mar-2017 09:10:28] NOTICE: ready to handle connections
这是php-fpm日志,军哥帮忙看看什么原因。之前装过一次lnmp,php是5.6的,也是502。然后卸载重新装了一遍,还是同样的问题。


/etc/init.d/php-fpm status
php-fpm (pid 18980) is running...

php-fpm也是能启动的。

php-fpm.conf的配置文件是这样的
[global]
pid = /usr/local/php/var/run/php-fpm.pid
error_log = /usr/local/php/var/log/php-fpm.log
log_level = notice

[www]
listen = /tmp/php-cgi.sock
listen.backlog = -1
listen.allowed_clients = 127.0.0.1
listen.owner = www
listen.group = www
listen.mode = 0666
user = www
group = www
pm = dynamic
pm.max_children = 60
pm.start_servers = 30
pm.min_spare_servers = 30
pm.max_spare_servers = 60
request_terminate_timeout = 100
request_slowlog_timeout = 0
slowlog = var/log/slow.log
作者: ekingfan    时间: 2018-4-25 23:52
标题: 网站正常运行偶尔出现502 Bad Gateway,已经处理 ,但出现停十多秒才跳转到其它页面
网站正常运行偶尔出现502 Bad Gateway,已经处理 ,但出现停十多秒才跳转到其它页面 我已经按 军哥的方法操作
第三种原因:
在安装好使用过程中出现502问题,一般是因为默认php-cgi进程是5个,可能因为phpcgi进程不够用而造成502,需要修改/usr/local/php/etc/php-fpm.conf 将其中的max_children值适当增加,如果php已升级到5.3.*以上且使用的是dynamic模式,需要调整pm.min_spare_servers和pm.max_spare_servers的值适当增加。最大值可以按内存xxMB/2/20 的整数来算(内存以MB为单位进行计算,/ 为除,取整数),最小值可以按内存/2/40 的整数来算,可以少点或多大,可以自己调整运行看看,同时pm.max_children也调整为和pm.max_spare_servers的值一样。
也有可能是max_requests值不够用。


现在问题又来了, 没有现在502  但是有时候正常, 我是在做 wordpress 网站, 经验在点击各页面 刷新。   有时候点击 停了好久不动,大概是十多秒再转到页面(之前没有按上面第三种 原因改 就会出现 502 Bad Gateway)

我想问还有什么问题改正吗?  我测试出现这种不动的情况 。 图片链接是能正常显示的, 估计是与后台数据库连接 出了问题。 我是用lnmp1.5 的,   是不是应该完全重装?
作者: ekingfan    时间: 2018-5-16 15:40
标题: 今天完全502
怎么搞也不行了。。搞上面的方法都试过一。。也重启过了。。就是502 是不是1.4 有问题?之前用1.3没有出现在这样的问题

pm.max_children = 12
pm.start_servers = 2
pm.min_spare_servers = 6
pm.max_spare_servers = 12
request_terminate_timeout = 0
request_slowlog_timeout = 0
slowlog = var/log/slow.log
作者: huoxiaowei    时间: 2018-7-12 14:46
标题: 回复 4# 的帖子
按照问题都对照过,是否还要添加location ~ \.*php {
                                                            
                                                               fastcgi_pass  unix:/tmp/php-cgi.sock;
                                                               fastcgi_index index.php;
                                                             include fastcgi.conf;
                                                              include pathinfo.conf;
                                                                  .
                                                                省略...
                                     }
来支持PHP文件?
作者: windrf    时间: 2019-1-25 14:26
同样是502,发现 通栏目下,数据库请求数据少点的能打开,多的就是502,怎么办啊 用的是 lnmp
作者: bigtotoro    时间: 2019-4-9 22:36
502, 用户少没啥问题,用户大一点就502.  

作者: bailongctui    时间: 2019-5-7 09:54
昨天安装好了 LNMP1.5 安装wordpress后部分 页面 502.

今天更新了一下 PHP 找寻一圈无果后,用脚本更新了一波PHP ,竟然完美解决了

https://www.php.net/

从5.6 to  PHP 7.1.29
作者: pweiming    时间: 2019-11-26 17:34
留个记号,说不定以后有用




欢迎光临 VPS侦探论坛 (https://bbs.lnmp.com/) Powered by Discuz! X3.4