centos系统中php Curl 无法访问https 的解决办法

本文详细介绍了如何在CentOS6系统中将CURL的SSL支持从NSS更换到OpenSSL,以解决HTTPS双向认证问题。通过下载对应版本的CURL源码,禁用NSS支持并启用OpenSSL,重新编译安装,最后更新动态共享库配置及重启HTTP服务,实现SSL模块的顺利切换。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在centos 6上面,curl模块的ssl 支持默认为NSS,涉及到的程序里有https,是需要双向认证的,这时使用NSS会报错,所以需要更换为openssl。

  1. 查看系统自带的curl版本
[root@localhost local]# curl -V
curl 7.19.7
  1. 得到curl当前版本是7.19.7,去官方下载http://curl.haxx.se/download/archeology/ 同样版本,然后解压、编译。
wget http://curl.haxx.se/download/archeology/curl-7.19.7.tar.gz
tar -zxf curl-7.19.7.tar.gz
cd curl-7.19.7
./configure --without-nss --with-ssl
make && make install

–without-nss 禁用nss, –with-ssl启用openssl的支持.

  1. 将curl的库载入动态共享文件,并重新加载
echo "/usr/local/lib" >> /etc/ld.so.conf 
ldconfig
  1. 查看新安装后curl的版本
[root@localhost local]# curl -V
curl 7.19.7 (x86_64-unknown-linux-gnu) libcurl/7.19.7 OpenSSL/1.0.1e zlib/1.2.3 libidn/1.18
Protocols: tftp ftp telnet dict http file https ftps 
Features: IDN IPv6 Largefile NTLM SSL libz 
  1. 重启你的httpd/nginx服务和php服务器
service nginx restart #或service httpd restart
service php-fpm restart



作者:千学阁
链接:https://www.jianshu.com/p/0b68ae41d7d2
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值