博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LNMP环境出现502 Bad Gateway报错
阅读量:6544 次
发布时间:2019-06-24

本文共 2060 字,大约阅读时间需要 6 分钟。

环境:

centos 6.9

php-5.2.14
nginx 1.15

故障现象:

配置好LNMP环境后,phpinfo能够正常打开

1.web访问HTTPS异常

站点页面访问正常,但是跳转https时,出现502 Bad Gateway

2、php-fpm log

fpm_children_bury(), line 215: child 8460 (pool default) exited on signal 11 SIGSEGV (core dumped)

3、nginx error log

2018/09/21 15:52:29 [error] 2463#0: *36 recv() failed (104: Connection reset by peer) while reading response header from upstream

故障排查

在centos 6.9的系统里面的curl支持的https是nss版本的,而不是openssl的,

因为php环境原因,必须使用openssl

解决方法:

根据链接里面说的,去官网下载了一个最新版本(curl-7.28.1.tar.gz)的curl,来进行源码编译。

编译的依赖,openssl和openssl-devel。
编译方法和其他软件类似,步骤如下:
去到源码目录:curl-7.28.1
./configure --without-nss --with-ssl && make &&make install 即可完成编译。

1、系统的curl生成

wget

tar -zxvf curl-7.35.0.tar.gz
cd curl-7.35.0.tar.gz

cd /www/src/curl-7.39.0

./configure --prefix=/usr/local/curl --without-nss --with-ssl
make && make install

备份默认的curl二进制文件

sudo mv /usr/bin/curl /usr/bin/curl.bak
然后做一个新的curl软链
sudo ln -s /usr/local/curl/bin/curl /usr/bin/curl

然后再curl --version确认是否已经是openssl的版本

2、生成curl.so

cd /www/src/lanmp/php-5.2.17/ext/curl

/www/wdlinux/php/bin/phpize
./configure --with-php-config=/www/wdlinux/php/bin/php-config --with-curl=/usr/local/curl/

make && make install

3、重新编译php(php.ini找出原先的配置参数,复制,去掉with-curl,然后编译

cd /www/src/lanmp/php-5.2.17/

./configure '--prefix=/www/wdlinux/apache_php-5.2.17' '--with-config-file-path=/www/wdlinux/apache_php-5.2.17/etc' '--with-mysql=/www/wdlinux/mysql' '--with-iconv=/usr' '--with-mysqli=/www/wdlinux/mysql/bin/mysql_config' '--with-pdo-mysql=/www/wdlinux/mysql' '--with-freetype-dir' '--with-jpeg-dir' '--with-png-dir' '--with-zlib' '--with-libxml-dir=/usr' '--enable-xml' '--disable-rpath' '--enable-discard-path' '--enable-inline-optimization' '--enable-mbregex' '--enable-mbstring' '--with-mcrypt=/usr' '--with-gd' '--enable-gd-native-ttf' '--with-openssl' '--with-mhash' '--enable-ftp' '--enable-bcmath' '--enable-exif' '--enable-sockets' '--enable-zip' '--with-apxs2=/www/wdlinux/apache/bin/apxs'

4、编译完后,在php.ini里增加

extension=curl.so

重启php-fpm即可

本问题感谢: Showker笔记支持

转载于:https://blog.51cto.com/7603402/2178807

你可能感兴趣的文章
使用pip命令报You are using pip version 9.0.3, however version 18.0 is available pip版本过期.解决方案...
查看>>
(转)LINQ之路
查看>>
Django REST框架--关系和超链接api
查看>>
双击防止网页放大缩小HTML5
查看>>
C#的一些学习方法
查看>>
U3D Invoke() IsInvoking CancelInvoke方法的调用
查看>>
Javascript 如何生成Less和Js的Source map
查看>>
中间有文字的分割线效果
查看>>
<悟道一位IT高管20年的职场心经>笔记
查看>>
volatile和synchronized的区别
查看>>
10.30T2 二分+前缀和(后缀和)
查看>>
vuex视频教程
查看>>
Java 线程 — ThreadLocal
查看>>
安居客爬虫(selenium实现)
查看>>
-----二叉树的遍历-------
查看>>
ACM北大暑期课培训第一天
查看>>
F. Multicolored Markers(数学思维)
查看>>
Centos7安装搜狗输入法
查看>>
nodjs html 转 pdf
查看>>
Python字典
查看>>