После выполнения шагов из здесь, у меня есть Unsupported Protocol
при использовании параметра curl --http2
. Аналогично, установка CURLOPT_HTTP_VERSION
в CURL_HTTP_VERSION_2_0
приводит к передаче программы с использованием HTTP/1.1, а не HTTP/2.
Платформа: Ubuntu 15.04 на VMware Player 7.
Я установил nghttp2-1.0.4 с --prefix=/usr/local
, поэтому libnghttp2. * находится в /usr/local/lib
.
Это код для настройки curl-7.43.0:
./configure --with-nghttp2=/usr/local
Результат показывает, что HTTP2 включен:
HTTP2 support: enabled (nghttp2)
После make
и sudo make install
, возвращается Unsupported Protocol
:
curl --http2 https://http2.akamai.com
Версия curl не поддерживает nghttp2:
curl 7.43.0 (i686-pc-linux-gnu) libcurl/7.38.0 OpenSSL/1.0.1f zlib/1.2.8 libidn/1.28 librtmp/2.3
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtmp rtsp smtp smtps telnet tftp
Features: AsynchDNS IDN IPv6 Largefile GSS-API SPNEGO NTLM NTLM_WB SSL libz TLS-SRP
Затем я следил за советом из здесь, что мне нужно иметь OpenSSL 1.0.2 или новее. Установив это в /opt/openssl, я переконфигурировал:
./configure --with-nghttp2=/usr/local --with-ssl=/opt/openssl/lib
После make
и sudo make install
все проблемы остаются неизменными. Как ни странно, curl --version
по-прежнему возвращает ту же информацию, что и выше, при этом OpenSSL/1.0.1f еще не обновлен.
Приветствуется любая помощь, которая позволяет мне успешно использовать параметр --http2
.