curl: (1) Protocol https niet ondersteund of uitgeschakeld in libcurl

Ik probeer de Rails-omgevingen te installeren op Ubuntu 11.04. Als ik het commando rvm install 1.9.2 --with-openssl-dir=/usr/localstart, krijg ik de volgende foutmelding:

curl : (1) Protocol https not supported or disabled in libcurl

Hoe kan dit worden opgelost?


Antwoord 1, autoriteit 100%

Kreeg het antwoord HIERvoor ramen,
daar staat dat:

curl -XPUT 'http://localhost:9200/api/twittervnext/tweet'

Oeps, eerst proberen en al een fout:

curl: (1) Protocol 'http not supported or disabled in libcurl

De reden voor deze fout is nogal dom, Windows houdt er niet van als je enkele aanhalingstekens gebruikt voor opdrachten. Het juiste commando is dus:

curl –XPUT "http://localhost:9200/api/twittervnext/tweet"

Antwoord 2, autoriteit 21%

Ik kwam dit probleem tegen en bleek dat er een spatie was voor de httpsdie het probleem veroorzaakte. " https://"versus "https://"


Antwoord 3, autoriteit 9%

Het lijkt erop dat er al zoveel antwoorden zijn, maar het probleem dat ik ondervond was met dubbele aanhalingstekens.
Er is een verschil tussen:

en

"

Het wijzigen van het eerste dubbele aanhalingsteken in het tweede werkte voor mij, hieronder is de voorbeeldkrul:

curl -X PUT -u xxx:xxx -T test.txt "https://test.com/test/test.txt"

Antwoord 4, autoriteit 3%

Ik kwam hetzelfde probleem tegen tijdens het installeren van rvm voor ruby.
de oplossing gevonden:
na het uitpakken van curl (tar) in de downloadmap van root.

cd /root/Downloads/curl # step-1
./configure --with-ssl # step-2
make # step-3
make install # step-4 (if not root, use sudo before command)

bron


Antwoord 5, autoriteit 3%

In mijn geval werd het HTTPS-protocol in eerste instantie niet ondersteund door libcurl. Om erachter te komen welke protocollen worden ondersteund en welke niet, heb ik de curl-versie gecontroleerd met het commando:

curl --version

Het leverde de volgende informatie op:
curl 7.50.3 (x86_64-apple-darwin15.6.0) libcurl/7.50.3 SecureTransport zlib/1.2.5
Protocollen: dict bestand ftp ftps gopher http imap imaps ldap ldaps pop3 pop3s rtsp smb smbs smtp smtps telnet tftp
Kenmerken: IPv6 groot bestand NTLM NTLM_WB SSL libz UnixSockets

waar het https-protocol niet wordt ondersteund.

Vervolgens installeerde ik curl opnieuw en installeerde het met de volgende commando’s (na het uitpakken):

./configure –with-darwinssl (schakel ssl-communicatie in mac in)
maken
test maken
sudo make install

En na enkele minuten werk zijn de problemen opgelost!

Toen voerde ik het curl-versiecommando opnieuw uit, het toonde:

curl 7.50.3 (x86_64-apple-darwin15.6.0) libcurl/7.50.3 SecureTransport zlib/1.2.5
Protocollen: dictbestand ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp smb smbs smtp smtps telnet tftp
Kenmerken: IPv6 groot bestand NTLM NTLM_WB SSL libz UnixSockets

HTTPS-protocol opgedoken!

Eindelijk een handige site om naar te verwijzen als je krulproblemen tegenkomt.
https://curl.haxx.se/docs/install.html


Antwoord 6, autoriteit 2%

Dit probleem is opgelost met vlag –with-darwinssl

Ga naar map met curl-broncode

Download het hier https://curl.haxx.se/download.html

sudo ./configure --with-darwinssl
make
make install

start je console opnieuw en het is klaar!


Antwoord 7, autoriteit 2%

Ik los het op door 'http://webname...'te veranderen in "http://webname..."

Let op het citaat.Het moet dubbel (") zijn in plaats van enkel (').


Antwoord 8, autoriteit 2%

Dit wordt specifiek vermeld in het libcurl FAQ-item “Protocol xxx niet ondersteund of uitgeschakeld in libcurl “.

Voor uw plezier voeg ik de uitleg hier ook in:

Bij het doorgeven van een URL om te krullen om te gebruiken, kan het reageren dat de
bepaald protocol wordt niet ondersteund of uitgeschakeld. De specifieke manier
deze foutmelding is zo geformuleerd omdat curl geen maakt
intern onderscheid of een bepaald protocol dat niet is
ondersteund (dwz er is nooit een code toegevoegd die weet hoe dat moet)
protocol) of als het expliciet was uitgeschakeld. curl kan alleen worden gebouwd om
ondersteunt een gegeven stel protocollen en de rest zou dan uitgeschakeld
of niet ondersteund.

Merk op dat deze fout zal ook optreden als u langs een verkeerd gespeld
protocolgedeelte zoals in “htpt: //example.com” of als de minder evident
het geval als u prefix het protocol deel met een ruimte als in ”
http://example.com/ “.


Antwoord 9

Mijn probleem werd veroorzaakt zijn door het niet weergegeven UTF symbool. Ik kopieer de link vanuit de browser (in mijn geval was het een Nginx spoor ) en kreeg de volgende in klembord:

$ echo -n "​https://sk.ee/upload/files/ESTEID-SK_2015.pem.crt" | hexdump -C
00000000  e2 80 8b 68 74 74 70 73  3a 2f 2f 73 6b 2e 65 65  |...https://sk.ee|
00000010  2f 75 70 6c 6f 61 64 2f  66 69 6c 65 73 2f 45 53  |/upload/files/ES|
00000020  54 45 49 44 2d 53 4b 5f  32 30 31 35 2e 70 65 6d  |TEID-SK_2015.pem|
00000030  2e 63 72 74                                       |.crt|

Het probleem ligt in de reeks 0xe2 0x80 0x8b, die voorafgaat https. Deze sequentie is een lengte nul gecodeerd in UTF-8 .


Antwoord 10

Heb je dezelfde fout bij het gebruik van krul op https site als

curl https://api.dis...

zoals opgemerkt door ganesh , het was omdat mijn versie van krul was niet ssl ingeschakeld. ging terug en downloadde de versie met ssl en het werkte prima.


Antwoord 11

Ik heb curl zojuist opnieuw gecompileerd met configuratie-opties die verwijzen naar de openssl 1.0.2g bibliotheekmap en de include-map, en ik krijg nog steeds deze melding. Als ik ldd op curl doe, laat het niet zien dat het libcrypt.soof libssl.sogebruikt, dus ik neem aan dat dit moet betekenen dat, hoewel de makeen make installzijn zonder fouten gelukt, maar heeft curl geen HTTPS-ondersteuning? Configureren en maken was als volgt:

./configure --prefix=/local/scratch/PACKAGES/local --with-ssl=/local/scratch/PACKAGES/local/openssl/openssl-1.0.2g --includedir=/local/scratch/PACKAGES/local/include/openssl/openssl-1.0.2g
make
make test
make install

Ik moet vermelden dat libssl.so.1in /local/scratch/PACKAGES/local/libstaat. Het is onduidelijk of de optie --with-ssldaar moet verwijzen of naar de map waar de openssl-installatie het bestand openssl.cnf heeft geplaatst. Ik koos voor het laatste. Maar als het de eerste zou zijn, had het merk moeten falen met een fout dat het de bibliotheek niet kon vinden.


Antwoord 12

Het specificeren van het protocol binnen de url kan uw probleem oplossen.

Ik had een soortgelijk probleem (tijdens het gebruik van de curl php-client):

Ik gaf domain.comdoor in plaats van sftp://domain.com, wat leidde tot deze verwarrende fout:

Protocol “http” niet ondersteund of uitgeschakeld in libcurl, duurde 0 seconden.


Antwoord 13

Ik heb ook met dit probleem te maken gehad en na het debuggen werd de boosdoener gevonden. In mijn geval was het het “spatie”-teken vlak voor de https

Other episodes