curl 7.19 版本不支持 TLS v1.1 以上的协议,如果需要支持 TLS v1.2 版本,至少需要升级到 curl 7.34 版本。
然后查看系统目前安装的 curl 版本:
curl -V curl 7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.21 Basic ECC zlib/1.2.3 libidn/1.18 libssh2/1.4.2Protocols: tftp ftp telnet dict ldap ldaps http file https ftps scp sftp
7.19 版本 2008年就发布了,目前 CentOS 6 还使用该版本。
步骤
1)下载curl包(可以在这个网站上找最新的版本 http://curl.haxx.se/download/
wget https://curl.haxx.se/download/curl-7.55.1.tar.gz
2)解压
tar -xzvf curl-7.55.1.tar.gz
3)覆盖安装
cd curl-7.55.1 ./configure ./configure --prefix=/usr/local/curl make make install
备份并删除旧的
cp /usr/bin/curl /usr/bin/curl.old rm /usr/bin/curl
接着建立个软连接啥的,让他连接到自己的命令里去
ln -s /usr/local/curl/bin/curl /usr/bin/curl
4)使用 curl --version 检查是否更新成功
5)至此,升级成功1
可能会不成功,另外一种方法:
使用yum升级curl
查看 curl 官方页面 http://curl.haxx.se/download.html#LinuxRedhat,找到对应页面 https://mirror.city-fan.org/ftp/contrib/sysutils/Mirroring,这个页面的介绍非常详细。
成功寻找到一个 repo,接下去介绍安装步骤。
(1)安装 repo
rpm -Uvh http://www.city-fan.org/ftp/contrib/yum-repo/rhel6/x86_64/city-fan.org-release-2-1.rhel6.noarch.rpm
(2)查看该 repo 包含的 curl 版本
yum --showduplicates list curl --disablerepo="*" --enablerepo="fan*"
输出如下:
Installed Packagescurl.x86_64 7.61.0-6.0.cf.rhel6 @city-fan.org
可见该 repo 包含 7.61 的 curl 安装包。如果还是显示个7.19.7的那就尝试前面第一种方法
(3)安装
yum install "curl-7.61.0-6.0.cf.rhel6.x86_64" --disablerepo="*" --enablerepo="city*"
安装会包 libnghttp2 版本的报错,仔细查看 https://mirror.city-fan.org/ftp/contrib/sysutils/Mirroring 说明,其中说的很清楚:
Additionally, builds for recent Fedora releases and RHEL are linked against libnghttp2. This library is included in Fedora and can be obtained from the EPEL Repository for RHEL.
那么升级 libnghttp2 :
yum list libnghttp2 --disablerepo="*" --enablerepo="epel" yum install libnghttp2 --disablerepo="*" --enablerepo="epel"
然后在执行一般第三个
最后再安装 curl 成功。
(4)查看版本:
curl -V
下一篇: Linux下PHP安装Redis扩展