关于curl报错:curl: (1) Protocol "https" not supported or disabled in libcurl
Posted on 2021-04-28 22:24 520_1351 阅读(5437) 评论(1) 编辑 收藏 举报操作系统:Red Hat Enterprise Linux Server release 7.6 (Maipo)
curl官网:https://curl.se
今天在一台主机上使用curl命令时(访问https网站下载脚本,curl使用了--tlsv1.2及--insecure选项)
报错:curl: (1) Protocol "https" not supported or disabled in libcurl
初步的排查过程如下:
[qq_5201351@localhost ~]$ curl -V curl 7.69.0 (x86_64-pc-linux-gnu) libcurl/7.69.0 Release-Date: 2020-03-04 Protocols: dict file ftp gopher http imap pop3 rtsp smtp telnet tftp Features: AsynchDNS Largefile UnixSockets [qq_5201351@localhost ~]$
由上可知curl没有对https的支持,应该是当初安装时没有添加对SSL的支持
尝试解决方案:先安装openssl-devel,然后再yum update curl命令,还是一样的不支持
+++于是使用了源码安装curl(为了安全,不影响现有系统,笔者先使用个人普通用户安装),进行安装解决
1、使用root用户,安装openssl-devel软件包(如果不安装,源码安装的curl依然不会支持SSL)
[root@localhost ~]# yum install openssl-devel -y
2、源码编译安装curl,普通的三步安装即可,推荐使用--prefix指定好安装路径
[qq_5201351@localhost ~]$ wget https://curl.se/download/curl-7.76.1.tar.gz [qq_5201351@localhost ~]$ tar zxf curl-7.76.1.tar.gz [qq_5201351@localhost ~]$ cd curl-7.76.1/ [qq_5201351@localhost curl-7.76.1]$ ./configure --prefix=/home/qq_5201351/curl_https [qq_5201351@localhost curl-7.76.1]$ make [qq_5201351@localhost curl-7.76.1]$ make install
3、最后执行执行自己安装的curl命令可以看到支持https了(也可以加入到用户PATH变量中)
[qq_5201351@localhost ~]$ /home/qq_5201351/curl_https/bin/curl -V curl 7.76.1 (x86_64-pc-linux-gnu) libcurl/7.76.1 OpenSSL/1.0.2k-fips zlib/1.2.7 Release-Date: 2021-04-14 Protocols: dict file ftp ftps gopher gophers http https imap imaps mqtt pop3 pop3s rtsp smb smbs smtp smtps telnet tftp Features: alt-svc AsynchDNS HTTPS-proxy Largefile libz NTLM NTLM_WB SSL UnixSockets
4、最后问题得到解决,当然也可以直接使用root用户安装,然后配置好PATH环境变量,让系统不使用默认yum/rpm方式安装的curl命令
尊重别人的劳动成果 转载请务必注明出处:https://www.cnblogs.com/5201351/p/14716040.html
作者:一名卑微的IT民工
出处:https://www.cnblogs.com/5201351
本博客所有文章仅用于学习、研究和交流目的,欢迎非商业性质转载。
由于博主的水平不高,文章没有高度、深度和广度,只是凑字数,不足和错误之处在所难免,希望大家能够批评指出。
博主是利用读书、参考、引用、复制和粘贴等多种方式打造成自己的文章,请原谅博主成为一个卑微的IT民工!