由于Nginx处理php反代到后端php-cgi处理,如未收到回应会输出502 Bad Gateway,可优化配置防止出现此类情况。
也可以新建脚本监控lnmp出现502 Bad Gateway自动重启lnmp。
1.调整nginx与php-cgi通信方式,默认为unix-sock,更改为较稳定的TCP方式。
#https://www.haiyun.me
sed -i 's/\/tmp\/php-cgi.sock/127.0.0.1:9000/' /usr/local/php/etc/php-fpm.conf
#设置TCP监听127.0.0.1:9000
sed -i 's/unix:\/tmp\/php-cgi.sock/127.0.0.1:9000/' /usr/local/nginx/conf/nginx.conf
sed -i 's/unix:\/tmp\/php-cgi.sock/127.0.0.1:9000/' /usr/local/nginx/conf/vhost/*
#设置nginx反代
2.修改php-cgi进程数量,每个php-cgi进程占用15M左右内存,由于lnmp为小内存优化,默认开启5个php-cgi进程,可根据自己情况适量增加,不要让系统因为内存不足而当掉。
sed -i 's/max_children">.</max_children">8</' /usr/local/php/etc/php-fpm.conf
#调整为8个
/root/lnmp restart #t重启lnmp
3.修改超时时间,lnmp已优化设置。
标签:lnmp, nginx, php-cgi, lnmp502解决, nginx错误502解决