Ubuntu 打包的 curl 似乎不支持 http3。如何在 curl 中启用 http3?
答案1
我发现最简单的方法是使用ymuski/curl-http3码头工人形象:
docker run --rm ymuski/curl-http3 curl --http3 https://example.org/
注意:与其他 HTTP/3 客户端不同,curl 不会先使用旧版 HTTP 访问页面以找出其在Alt-Svc
标头中的 HTTP/3 位置。这意味着,如果 HTTP/3 正在监听另一个主机/端口,则您必须在 curl 调用中使用该主机/端口。
答案2
您必须构建实验版本,它尚未作为软件包发布。
cd ..
git clone https://github.com/curl/curl
cd curl
./buildconf
LDFLAGS="-Wl,-rpath,<somewhere1>/lib" ./configure --with-ssl=<somewhere1> --with-nghttp3=<somewhere2> --with-ngtcp2=<somewhere3>
make
答案3
我为 Linux 12 架构和 macOS 创建了一个支持 HTTP/3 的静态 cURL。你可以看一下。它由 GitHub Actions 编译。