Ich versuche, die Rails-Umgebungen unter Ubuntu 11.04 zu installieren. Wenn ich den Befehl rvm install 1.9.2 --with-openssl-dir=/usr/local
starte, wird der folgende Fehler angezeigt:
curl : (1) Protocol https not supported or disabled in libcurl
Wie kann das gelöst werden?
ruby-on-rails
curl
openssl
libcurl
ubuntu-11.04
Giuseppe Di Federico
quelle
quelle
--with-openssl-dir=/usr/local
(dh einfachrvm install 1.9.2
) verwenden?sudo apt-get install curl
) nicht installiert haben . Versuchen Siecurl -o "google.html" https://google.com
zu überprüfen, ob HTTPS unterstützt wird.RCurl
.Antworten:
Habe die Antwort HIER für Windows bekommen, dort steht:
Woops, erstmal versuchen und schon ein Fehler:
Der Grund für diesen Fehler ist irgendwie dumm, Windows mag es nicht, wenn Sie einfache Anführungszeichen für Befehle verwenden . Der richtige Befehl lautet also:
quelle
curl "http://localhost:3030/messages/" -H "Content-Type: application/json" --data-binary "{ \"name\":\"Curler\", \"text\": \"Hello from the command line\" }"
stattcurl "http://localhost:3030/messages/" -H "Content-Type: application/json" --data-binary '{ "name":"Curler", "text": "Hello from the command line" }'
... beachten Sie das einfache und nicht entflohene Doppel Zitate auf der falschen Seite.new_url=$( echo $url | tr -d \" )
Ich bin auf dieses Problem gestoßen und habe festgestellt, dass vor dem ein Leerzeichen
https
war, das das Problem verursacht hat." https://"
vs."https://"
quelle
Es sieht so aus, als gäbe es bereits so viele Antworten, aber das Problem, mit dem ich konfrontiert war, waren doppelte Anführungszeichen. Es gibt einen Unterschied zwischen:
und
Das Ändern des 1. doppelten Anführungszeichens in das zweite, das für mich funktioniert hat, ist die folgende Beispiel-Locke:
quelle
Ich habe das gleiche Problem beim Versuch, rvm für Ruby zu installieren. fand die Lösung: nach dem Extrahieren von curl (tar) im Download-Ordner von root.
Quelle
quelle
Dieses Problem wurde mit flag --with-darwinssl gelöst
Wechseln Sie in den Ordner mit dem Curl-Quellcode
Laden Sie es hier herunter https://curl.haxx.se/download.html
Starten Sie Ihre Konsole neu und fertig!
quelle
Dies wird speziell im libcurl-FAQ-Eintrag " Protokoll xxx wird in libcurl nicht unterstützt oder deaktiviert " erwähnt.
Zu Ihrem Vergnügen binde ich die Erklärung auch hier ein:
quelle
In meinem Fall wurde das HTTPS-Protokoll von libcurl überhaupt nicht unterstützt. Um herauszufinden, welche Protokolle unterstützt werden und welche nicht, habe ich die Curl-Version mit dem folgenden Befehl überprüft:
Es lieferte Informationen wie folgt:
curl 7.50.3 (x86_64-apple-darwin15.6.0) libcurl/7.50.3 SecureTransport zlib/1.2.5
Protokolle: Diktatdatei ftp ftps gopher http imap imaps ldap ldaps pop3 pop3s rtsp smb smbs smtp smtps telnet tftp Merkmale: IPv6 Largefile NTLM NTLM_WB SSL libz UnixSocketsWobei das https-Protokoll nicht unterstützt wird.
Dann habe ich curl neu installiert und es mit den folgenden Befehlen installiert (nach dem Entpacken):
Und nach einigen Minuten Arbeit waren die Probleme behoben!
Dann führe ich den Befehl curl version erneut aus. Er zeigte:
curl 7.50.3 (x86_64-apple-darwin15.6.0) libcurl/7.50.3 SecureTransport zlib/1.2.5
Protokolle: Diktierdatei ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp smb smbs smtp smtps telnet tftp Funktionen: IPv6 Largefile NTLM NTLM_WB SSL libz UnixSocketsDas HTTPS-Protokoll wurde angezeigt!
Schließlich eine nützliche Website, auf die Sie verweisen können, wenn Sie auf Curl-Probleme stoßen.
https://curl.haxx.se/docs/install.html
quelle
Ich löse es nur durch eine Änderung
'http://webname...'
zu"http://webname..."
Beachten Sie das Zitat. Es sollte double (
"
) anstelle von single ('
) sein.quelle
Mein Problem wurde durch ein nicht angezeigtes UTF-Symbol behoben. Ich kopiere den Link vom Nginx-Track und habe den nächsten in der Zwischenablage:
Das Problemsymbol ist
0xe2 0x80 0x8b
ZERO WIDTH JOINER , das vor https steht.quelle
Habe den gleichen Fehler bei der Verwendung von Curl auf https-Site wie
Wie Ganesh betonte , lag es daran, dass meine Version von Curl nicht SSL-fähig war. ging zurück und lud die Version mit ssl herunter und es funktionierte gut.
quelle
Ich habe gerade curl mit Konfigurationsoptionen neu kompiliert, die auf den Bibliotheksordner openssl 1.0.2g und den Ordner include zeigen, und ich erhalte immer noch diese Meldung. Wenn ich ldd on curl mache, zeigt es nicht, dass es entweder
libcrypt.so
oder verwendetlibssl.so
, also nehme ich an, dass dies bedeuten muss, dass curl , obwohl dasmake
undmake install
ohne Fehler erfolgreich war, dennoch keine HTTPS-Unterstützung hat? Konfigurieren und erstellen war wie folgt:Ich sollte erwähnen, dass
libssl.so.1
das in ist/local/scratch/PACKAGES/local/lib
. Es ist unklar, ob die--with-ssl
Option dort oder auf das Verzeichnis verweisen soll, in dem die openssl-Installation die Datei openssl.cnf abgelegt hat. Ich habe mich für Letzteres entschieden. Aber wenn es das erstere sein sollte, sollte das Make mit einem Fehler fehlgeschlagen sein, dass es die Bibliothek nicht finden konnte.quelle
Das Angeben des Protokolls in der URL kann Ihr Problem lösen.
Ich hatte ein ähnliches Problem (bei der Verwendung von Curl PHP Client):
Ich habe domain.com anstelle von sftp: //domain.com übergeben, was zu diesem verwirrenden Fehler führte:
quelle