首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >cURL不使用nghttp2

cURL不使用nghttp2
EN

Stack Overflow用户
提问于 2015-04-20 22:13:02
回答 2查看 6.2K关注 0票数 2

我想在cURL上使用http/2。首先,当我尝试这个curl --http2 https://http2.akamai.com/时,我遇到了一个错误--“协议不受支持”。我安装了nghttp2,并重新安装了cURL,就像描述这里一样。错误消失了,我现在可以用curl --http2获取数据了。但是页面https://http2.akamai.com/告诉我“这个浏览器没有启用HTTP/2”,而在chrome中或者直接通过nghttp2,它说“您现在正在使用HTTP/2!”

我使用mac x,并通过自制安装了最新版本中的所有依赖项。我下载的curl源(7.41)下载了这里

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-04-21 06:29:46

您可能没有运行新建的curl,或者您的新curl构建使用了前面的libcurl安装。调用'curl --version‘并确保它列出支持的"HTTP2“(包括在功能中)。

您还需要确保使用支持ALPN的TLS库版本(在TLS上支持HTTP/2 )构建curl。如果使用openssl进行构建,则需要版本1.0.2 (或更高版本)。

我刚刚在https://http2.akamai.com/上试了一下,上面写着“你现在正在使用HTTP/2!”当我试着用它做卷发时,我会很好的:

代码语言:javascript
复制
$ curl --http2 -kv https://http2.akamai.com/ 

您可以查看详细的输出,您应该可以看到ALPN提供的内容以及协议curl和服务器同意使用的内容。

票数 4
EN

Stack Overflow用户

发布于 2015-04-20 22:18:47

对于启用了HTTP/2的特定浏览器,页面可能是白色的,因此它返回静态内容,因为它不识别cURL内容。你可以用设置用户代理来假装你是Chrome。

代码语言:javascript
复制
curl -A "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/534.30 (KHTML, like Gecko) Chrome/41.0.742.112 Safari/534.30" --http2 https://http2.akamai.com/
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29759380

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档