7.4.2 版本中的 PHP cURL 扩展是否支持带有 HTTP/3 的 cURL

Exa*_*son 3 php curl php-curl quic http3

我可以使用 curl 使用 HTTP/3 而不是 HTTP/2、HTTP/1.1 或 HTTP/1.0.curl 来卷曲支持 HTTP/3 的网站吗?这可能吗?如果是这样,如何做到这一点?

Dan*_*erg 5

是的,确实可以开始,但您需要进行调整和手动操作才能使其工作:

  1. 确保您的 PHP 使用为支持HTTP/3 而构建的 libcurl

  2. 为你的 PHP 程序提供必要的 HTTP3 符号,可能像下面的例子(因为 CURL/PHP 本身还不知道 HTTP/3)

  3. 确保您构建 curl 的 QUIC/h3 库支持与您打算尝试的测试服务器相同的 HTTP/3 草案版本

  4. HTTP/3 和 QUIC 还没有完成,预计会有一些粗糙的边缘和故障。启用详细并注意细节

快乐http3ing!

if (!defined('CURL_HTTP_VERSION_3')) {
  define('CURL_HTTP_VERSION_3', 30);
}
    
$ch = curl_init("https://cloudflare-quic.com/");
curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_3);
curl_exec($ch);
Run Code Online (Sandbox Code Playgroud)