1.背景
前段时间公司接入了新的支付系统,要在本地服务器安装认证证书。包括根证书,服务器证书和中间证书。在我自己的电脑上测试连通验证的时候是正常的,但是一到服务器上测试就提示错误。经过各方查看。发现时centos7默认的curl版本是7.29,而此版本在这种情况下又有一个bug。因此造成了连通认证失败了。
2.应对方案
既然此版本的curl有问题,因此决定升级curl的版本。
下面就来介绍一下升级的过程(在线升级不涉及到服务器重启)
2.1安装gcc和openssl
yum install wget gcc openssl-devel -y
2.2设置环境变量, 确保openssl头文件/库路径与环境变量一致(不然后续编译make会失败)
export CPPFLAGS=-I/usr/local/include
export LDFLAGS="-L/usr/local/lib64 -Wl,-rpath,/usr/local/lib64"
export LIBS="-ldl"
2.3下载解压源码包
wget https://curl.haxx.se/download/curl-7.67.0.tar.gz
gunzip -c curl-7.67.0.tar.gz | tar xvf -
cd curl-7.67.0
2.4进行编译
./configure --with-ssl --prefix=/usr/local/curl
make
make install
2.5配置环境并验证
echo "export PATH=/usr/local/curl/bin:$PATH" >> /etc/profile
source /etc/profile
curl --version
3.最后进行服务器连通认证
通过服务器连通也没问题,至此curl升级完成