curl 不支持 https(Protocol https not supported or disabled in libcurl)

curl默认安装完后是只支持http协议而不支持https协议的。

可以先用curl -V查看当前curl支持哪些协议:

[[email protected] /]# curl -V

curl 7.19.4 (x86_64-unknown-linux-gnu) libcurl/7.19.4 OpenSSL/1.0.2k zlib/1.2.11

Protocols: tftp ftp telnet dict http file ftps

可以看到并不支持https协议。若用curl命令访问https时就会报错:

Protocol https not supported or disabled in libcurl

若需要让curl支持https协议,需要安装openssl并在curl中使之生效:

下载并安装openssl包(若已经装了则不需要重新安装):

wget https://www.openssl.org/source/openssl-1.0.2k.tar.gz

wget https://www.openssl.org/source/openssl-fips-2.0.14.tar.gz

安装openssl-fips:

tar xvf openssl-fips-2.0.14.tar.gz

cd openssl-fips-2.0.14&&./config&&make&&make install

安装openssl:

tar xvf openssl-1.0.2k.tar.gz

./config shared --prefix=/usr/local/ssl&& make && make install

# 更新ld

echo "/usr/local/ssl/lib" >> /etc/ld.so.conf

ldconfig -v

# 配置openssl库

cp /usr/local/ssl/lib/libssl.so.1.0.0 /usr/lib64;cp/usr/local/ssl/lib/libcrypto.so.1.0.0 /usr/lib64

chmod 555 /usr/lib64/libssl.so.1.0.0;chmod 555/usr/lib64/libcrypto.so.1.0.0

ln -s /usr/lib64/libcrypto.so.1.0.0/usr/lib64/libcrypto.so.10;ln -s /usr/lib64/libssl.so.1.0.0 /usr/lib64/libssl.so.10

ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl;ln -s/usr/local/ssl/include/openssl /usr/include/openssl

# 查看openssl版本

openssl version -a

OpenSSL 1.0.2k  26 Jan2017

built on: reproducible build, date unspecified

platform: linux-x86_64

options:  bn(64,64)rc4(16x,int) des(idx,cisc,16,int) idea(int) blowfish(idx)

重新编译curl

./configure –with-ssl=/usr/local/ssl

make

make install

查看curl是否已经支持https协议:

curl -V

curl 7.19.4 (x86_64-unknown-linux-gnu) libcurl/7.19.4 OpenSSL/1.0.2k zlib/1.2.11

Protocols: tftp ftp telnet dict http file https ftps

可以看到已经支持https协议了。

时间: 2024-10-13 14:42:54

curl 不支持 https(Protocol https not supported or disabled in libcurl)的相关文章

curl: (1) Protocol 'http not supported or disabled in libcurl

在windows中使用curl的时候,命令为 curl 'http://localhost:9200/?pretty' 出现这个报错 curl: (1) Protocol 'http not supported or disabled in libcurl 改为curl "http://localhost:9200/?pretty"即可 在linux中使用curl 'http://localhost:9200/?pretty'是正常的 curl: (1) Protocol 'http

protocol http not supported or disabled in libcurl apt-get

ubuntu 14.04 碰到了这个莫名其妙的问题.谷歌了一把,解决方案如下:http://askubuntu.com/questions/683857/curl-1-protocol-https-not-supported-or-disabled-in-libcurl 即重新编译安装curl包(lib curl). wget https://curl.haxx.se/download/curl-7.51.0.tar.gz tar -xvf curl-7.51.0.tar.gz cd curl-

python error: curl: (1) Protocol "'https" not supported or disabled in libcurl

python 调用curl访问一个网页时,出现error: curl: (1) Protocol "'https" not supported or disabled in libcurl 控制台直接curl xxx是ok的 output = subprocess.check_output(["curl","https://stackoverflow.com/questions/6884669/curl-1-protocol-https-not-suppo

curl: (1) Protocol "'https" not supported or disabled in libcurl的解决方法

在win10中使用curl 下载地址:https://curl.haxx.se/download.html 1,安装curl[我按照在了D盘] 2,配置环境变量——curl.exe所在的位置 3,配置Path——%CURL_HOME% 4,运行curl——curl --help 5,API调用 6,这里遇见了坑——curl: (1) Protocol "'https" not supported or disabled in libcurl 解决方法:把文档中的 '' 引号,改成 &q

php中curl不支持https的解决办法

在php程序中使用curl去访问https站点时,报错:Protocol https not supported or disabled in libcurl 该错误信息表示php当时编译时使用的curl库不支持https, 验证方法为你的curl安装目录/bin/curl  -V  显示如下:Protocols: dict file ftp gopher http imap pop3 rtsp smtp telnet tftp这表示curl是不支持 https的 为了支持https,需要下载源

curl不能支持https问题

默认情况下,libcurl不支持https, 如果使用https链接,就会出现" Protocol https not supported or disabled in libcurl" 的错误提示.查看curl是否支持https可以使用命令: curl -V. curl有两种方式使用https : 1. 设定为不验证证书和HOST code = curl_easy_setopt(handle, CURLOPT_SSL_VERIFYPEER, 0L); 2. 设定一个SSL判别证书 h

Linux下PHP5.2安装curl扩展支持https

问题: 线上运行的LNMP服务器,因历史原因安装的curl模块只支持http,不支持https.类似请求或POST微信接口(小程序),都无法正常使用. 一.解决方法: 编译安装curl,重新编译php,使php的curl模块支持https. cd /data0/software1.下载安装curlwget http://curl.haxx.se/download/curl-7.44.0.tar.gztar zxvf curl-7.44.0.tar.gzcd curl-7.44.0./config

Spring Boot工程支持HTTP和HTTPS,HTTP重定向HTTPS

本文试图以通俗易通的方式介绍Https的工作原理,不纠结具体的术语,不考证严格的流程.我相信弄懂了原理之后,到了具体操作和实现的时候,方向就不会错,然后条条大路通罗马.阅读文本需要提前大致了解对称加密.非对称加密.信息认证等密码学知识.如果你不太了解,可以阅读Erlang发明人Joe Armstrong最近写的Cryptography Tutorial.大牛出品,通俗易懂,强力推荐. Https涉及到的主体 客户端.通常是浏览器(Chrome.IE.FireFox等),也可以自己编写的各种语言的

Https系列之三:让服务器同时支持http、https,基于spring boot

Https系列会在下面几篇文章中分别作介绍: 一:https的简单介绍及SSL证书的生成二:https的SSL证书在服务器端的部署,基于tomcat,spring boot三:让服务器同时支持http.https,基于spring boot四:https的SSL证书在Android端基于okhttp,Retrofit的使用 所有文章会优先在:微信公众号"颜家大少"中发布转载请标明出处 前面已介绍了:"https在服务器端的部署,基于tomcat,spring boot&quo