Avendo già seguito i passaggi da here, ho ancora Unsupported Protocol
quando si utilizza l'opzione arricciatura --http2
. Allo stesso modo, l'impostazione di CURLOPT_HTTP_VERSION
su CURL_HTTP_VERSION_2_0
genera il programma che comunica utilizzando HTTP/1.1, non HTTP/2.HTTP2 con CURL fornisce "Protocollo non supportato"
Piattaforma: Ubuntu 15.04 su VMware Player 7.
ho installato nghttp2-1.0.4 con --prefix=/usr/local
, da qui il libnghttp2 * si trova in /usr/local/lib
..
Questo è il codice per configurare curl-7.43.0:
./configure --with-nghttp2=/usr/local
Il risultato dimostra che HTTP2 è abilitato:
HTTP2 support: enabled (nghttp2)
Dopo make
e sudo make install
, i seguenti rendimenti: Unsupported Protocol
curl --http2 https://http2.akamai.com
La versione arricciata non mostra nghttp2 è supportato:
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
Poi ho seguito i consigli da here, che ho bisogno di avere OpenSSL 1.0.2 o superiore. Dopo aver installato che in/opt/OpenSSL, ho riconfigurato:
./configure --with-nghttp2=/usr/local --with-ssl=/opt/openssl/lib
Dopo make
e sudo make install
, tutti i problemi rimangono gli stessi. Stranamente, lo curl --version
restituisce ancora le stesse informazioni di cui sopra, con OpenSSL/1.0.1f non ancora aggiornato.
Qualsiasi aiuto che mi permetta di usare con successo l'opzione --http2
è molto apprezzato.
Il secondo comando sopra mostra che sto ancora usando la libreria predefinita/lib/i386-liux-gnu. L'impostazione del percorso della libreria come primo codice sopra ha risolto il problema. Curl ora sta parlando http2. Grazie! – Curioso
Come consigliato [qui] (http://stackoverflow.com/questions/12636536/install-curl-with-openssl), comando 'sudo' prima di'./Configure'. Senza 'sudo', il mio non ha funzionato. – Curioso
Ho ancora problemi. ~~~~ autoreconf -i automake autoconf sudo ./configure --prefix =/usr/local sudo make sudo make install LD_LIBRARY_PATH =/usr/local/lib ricciolo --http2 http: // google.com arricciatura: (1) Protocollo non supportato ~~~~ – user1928764