目录

文章目录

  • 目录
  • 编译安装
  • YUM 升级
  • curl 常用选项

编译安装

安装编译环境:

yum -y groupinstall "Development Tools"
yum -y install libev libev-devel zlib zlib-devel openssl openssl-devel git

安装 OpenSSL:

mkdir /var/tmp
cd /var/tmp
wget https://openssl.org/source/openssl-1.0.2.tar.gz
tar -zxf openssl-1.0.2.tar.gz
cd openssl-1.0.2
mkdir /opt/openssl
./config --prefix=/opt/openssl
make
make test
make install

安装 nghttp2:

git clone https://github.com/tatsuhiro-t/nghttp2.git
cd nghttp2
autoreconf -i
automake
autoconf
./configure
make
make install
echo '/usr/local/lib' > /etc/ld.so.conf.d/custom-libs.conf
ldconfig
ldconfig -p| grep libnghttp2

安装 curl:

cd /var/tmp
git clone https://github.com/bagder/curl.git
cd curl
./buildconf
./configure --with-ssl=/opt/openssl --with-nghttp2=/usr/local --disable-file --without-pic --disable-shared
make

验证:

$ /var/tmp/curl/src/curl --version
curl 7.70.0-DEV (x86_64-unknown-linux-gnu) libcurl/7.70.0-DEV OpenSSL/1.0.2o nghttp2/1.41.0-DEV
Release-Date: [unreleased]
Protocols: dict ftp ftps gopher http https imap imaps pop3 pop3s rtsp smb smbs smtp smtps telnet tftp
Features: AsynchDNS HTTP2 HTTPS-proxy IPv6 Largefile NTLM NTLM_WB SSL TLS-SRP UnixSockets

注意:curl 从 7.52.0 版本开始也已经支持 TLS 1.3 了,curl 7.61.0 及以上在 TLS 握手过程中协商 TLS 版本时,curl 默认使用 TLS 1.3,但也取决于 curl 正在使用的 TLS 库及其版本,例如:要求 OpenSSL 1.1.1 版本以上。

YUM 升级

安装新版 libcurl 的 yum 源:

rpm -ivh http://mirror.city-fan.org/ftp/contrib/yum-repo/city-fan.org-release-1-13.rhel6.noarch.rpm

升级:

yum upgrade libcurl

升级完成后可以卸载此 yum 源:

rpm -e city-fan.org-release

curl 常用选项

语法格式:curl [options] [URL...]常用选项如下所示:-A/--user-agent <string>:设置用户代理发送给服务器-e/--referer <URL>:来源网址--cacert <file>:CA 证书(SSL)-k/--insecure:允许忽略证书进行 SSL 连接--compressed:要求返回是压缩的格式-H/--header <line>:自定义首部信息传递给服务器-i:显示页面内容,包括报文首部信息-I/--head:只显示响应报文首部信息-D/--dump-header <file>:将 URL 的 header 信息存放在指定文件中--basic:使用 HTTP 基本认证-u/--user <user[:password]>:设置服务器的用户和密码-L:如果有 3xx 响应码,重新发请求到新位置-O:使用 URL 中默认的文件名保存文件到本地-o <file>:将网络文件保存为指定的文件中--limit-rate <rate>:设置传输速度-0/--http1.0:数字 0,使用 HTTP 1.0-v/--verbose:更详细-C:选项可对文件使用断点续传功能-c/--cookie-jar <file name>:将 URL 中 Cookie 存放在指定文件中-x/--proxy <proxyhost[:port]>:指定代理服务器地址-X/--request <command>:向服务器发送指定请求方法-U/--proxy-user <user:password>:代理服务器用户和密码-T:选项可将指定的本地文件上传到 FTP 服务器上--data/-d:方式指定使用 POST 方式传递数据-b name=data:从服务器响应 set-cookie 得到值,返回给服务器

CentOS7 升级 curl 支持 HTTP2 与 TLS 1.3相关推荐

  1. centos7 升级curl版本

    curl的官网: http://www.city-fan.org/ 1.安装repo rpm -Uvh http://www.city-fan.org/ftp/contrib/yum-repo/rhe ...

  2. linux php curl 升级,ubuntu14.04升级php curl,支持http2发送APNs

    网上升级很多都不完整,不是这里出错就是那里出错. 遇到的问题是: 一.首先升级curl,这个比较容易,虽然支持http2,但是利用命令发送不了APNs的消息,明明支持http2,可以发送消息的头部依然 ...

  3. netty系列之:让TLS支持http2

    文章目录 简介 TLS的扩展协议NPN和ALPN SslProvider ApplicationProtocolConfig 构建SslContext ProtocolNegotiationHandl ...

  4. curl 支持ws吗_curl 支持 http2

    让 curl 支持 HTTP2 我们需要安装 nghttp2(http2 的 C 语言库) 源码安装 安装 nghttp2 git clone https://github.com/tatsuhiro ...

  5. 升级nginx以支持http2的方法

    本篇文章主要介绍了升级nginx以支持http2的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考.一起跟随小编过来看看吧 本文介绍了升级nginx以支持http2的方法,分享给大家,具体如下 ...

  6. 让curl命令支持http2

    CentOS 首先,先为你的服务器获取最新匹配的源:http://mirror.city-fan.org/ftp/contrib/yum-repo/ 安装新版libcurl的yum源 rpm -ivh ...

  7. 在CentOS 6.8 x86_64上安装nghttp2最新版及让curl具有http2特性

    nghttp2是什么? nghttp2是一个实现IETF官方HTTP/2和HPACK头压缩算法的C库,但不限如此,在C库基础上,还实现了http2的客户端,服务器,代理服务器,以及压测工具.参见官网链 ...

  8. Linux centos7升级内核(两种方法:内核编译和yum更新)

                Linux centos7升级内核(两种方法:内核编译和yum更新) Linux的内核概念不用说大家也很清楚,正是内核版本的不同,才有Linux发行版本的说法,现在主流的cen ...

  9. php openssl tls1.2,升级openssl 支持TLS1.2

    支持TLS1.2 背景: 现在许多网站,都要求tls1.2协议以上,像github. pip3安装包网站https://pip.pypa.io/等. openssl现有版本不支持.需要升级openss ...

最新文章

  1. Cell Reports:去除宿主和胞外DNA以提高微生物基因组得率(痰液样本)
  2. 大学计算机实验教程实验报告2.2,大学计算机实验2-实验报告.pdf
  3. 网站的服务器角色选哪个,原神平民开服选什么角色最好-开服必备角色推荐_好特网...
  4. CodeForces 351A Jeff and Rounding
  5. Android数据存储——SQLite数据库(模板)
  6. 全球最聪明50家公司公布:中国企业大放异彩 华为凶猛
  7. Bash漏洞引发僵尸网络狂欢
  8. 如何零基础入门产品经理
  9. CMR(IF=50.129)重磅综述|肠-脑轴新疗法:肠道菌群如何影响人类神经系统疾病
  10. 基于51单片机的温度采集系统
  11. 关于网站icon小图标在网站上不显示的问题解决办法
  12. MySQL utf8mb4字符集按中文拼音排序
  13. win10 设置定时关机
  14. mysql卸载如何彻底删除6_如何彻底卸载删除MySQL
  15. 商业研究(11):金融招聘,大有可为?
  16. python 进阶 【封装】 适合小白入门
  17. Nginx 配置代理https
  18. VC键盘VK键值列表
  19. 红外遥控器操作海康威视摄像头云台
  20. h1z1加载服务器锁定状态,h1z1进不去游戏锁定状态出错 | 手游网游页游攻略大全...

热门文章

  1. Kali Linux 安全渗透教程第六更1.4.2 安装至USB驱动器Kali Linux
  2. linux 终端 渐变色,iOS开发——UI篇文字渐变效果:图层中的mask属性
  3. SwiftUI编辑文字和图片
  4. vue拖拽控件生成界面代码_Blue HMI人机界面开发平台
  5. bat 取得服务列表_基于IDEA热部署更新服务器Tomcat类,服务器Tomcat热更新
  6. Xcode10新变化
  7. 计算机科普知识小动画,4岁嗯哼知识量惊呆杜江!这4部科普启蒙动画,孩子绝对不能错过...
  8. 解决ubuntu中遇到“E:Unable to locate package rar” 的问题
  9. 机器学习实战-之SVM核函数与案例
  10. 达摩院2022年十大科技趋势发布:AI for Science刚开始,大模型进入冷静期