it-swarm.com.ru

curl: (1) протокол https не поддерживается или отключен в libcurl

Я пытаюсь установить окружение Rails в Ubuntu 11.04. Когда я запускаю команду rvm install 1.9.2 --with-openssl-dir=/usr/local, появляется следующая ошибка:

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

Как это можно решить?

105
Giuseppe Di Federico

Получил ответ ЗДЕСЬ для windows, Там написано, что:

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

Woops, сначала попробуйте и уже ошибка:

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

Причина этой ошибки довольно глупая, Windows не нравится, когда вы используете одинарные кавычки для команд. Итак, правильная команда:

curl –XPUT "http://localhost:9200/api/twittervnext/Tweet"
190
cnlevy

Я столкнулся с этой проблемой и выяснил, что перед https был пробел, который вызывал проблему. " https://" vs "https://" 

57
jbrahy

Я столкнулся с той же проблемой, пытаясь установить rvm для Ruby . Нашел решение: После извлечения curl (tar) в папке загрузок 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)

источник

10
R T

Это специально упоминается в записи libcurl FAQ " Протокол xxx не поддерживается или отключен в libcurl ".

Для вашего удовольствия я добавлю здесь объяснение:

При передаче URL-адреса для использования curl, он может ответить, что конкретный протокол не поддерживается или отключен. Особый путь это сообщение об ошибке сформулировано потому, что curl не создает внутреннее различие между тем, является ли конкретный протокол поддерживается (т.е. никогда не добавлялся какой-либо код, который знает, как произносить этот протокол ) или если он был явно отключен. curl может быть построен только для поддерживать данный набор протоколов, а остальные будут отключены или не поддерживается. 

Обратите внимание, что эта ошибка также произойдет, если вы передадите неправильно написанное часть протокола как в "htpt: //example.com" или как менее очевидная в случае, если вы префиксом части протокола ставите пробел, как в " http://example.com/ ".

8
Daniel Stenberg

Решил эту проблему с флагом --with-darwinssl

Перейти в папку с исходным кодом curl

Загрузите его здесь https://curl.haxx.se/download.html

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

перезагрузите консоль и все готово!

6

В моем случае протокол HTTPS не был поддержан libcurl. Чтобы узнать, какие протоколы поддерживаются, а какие нет, я проверил версию curl с помощью команды:

завиток - версия

Он предоставил следующую информацию: Curl 7.50.3 (x86_64-Apple-darwin15.6.0) libcurl/7.50.3 SecureTransport zlib/1.2.5 Протоколы: файл dict ftp ftps Gopher http imap imaps ldap ldaps pop3 pop3s rtsp smb smbs smtp smtps telnet tftp Особенности: Крупный файл IPv6 NTLM NTLM_WB SSL libz UnixSockets 

где протокол https не поддерживается. 

Затем я переустановил curl и установил его, используя следующие команды (после распаковки):

./configure --with-darwinssl (включить ssl-связь в mac)

make

сделать тест

Судо сделать установку

И после нескольких минут работы проблемы решены!

Затем я снова запускаю команду curl version, которая показывает:

curl 7.50.3 (x86_64-Apple-darwin15.6.0) libcurl/7.50.3 SecureTransport zlib/1.2.5 Протоколы: файл dict ftp ftps Gopher http https imap imaps ldap ldaps pop3 pop3s rtsp smb smbs smtp smtps telnet tftp Особенности: Большой IPv6 NTLM NTLM_WB SSL libz UnixSockets 

Протокол HTTPS появился!

Наконец, полезный сайт, на который можно сослаться, когда вы сталкиваетесь с проблемами с curl . https://curl.haxx.se/docs/install.html

5
someone

Я решаю это, просто изменив 'http://webname...' на "http://webname..."

Обратите внимание на цитату. Он должен быть двойным (") вместо одинарного (').

4
Aminah Nuraini

Получил ту же ошибку при использовании curl на сайте https, как 

curl https://api.dis...

как указывает ganesh , это было потому, что моя версия curl не была включена ssl. вернулся и скачал версию с ssl и все работало нормально.

1
Deepak Rao

Моя проблема была вызвана не отображаемым символом UTF. Я скопировал ссылку с трека nginx и получил следующее в буфере обмена:

0x00000000: e2 80 8b 68 74 74 70 73 3a 2f 2f 73 6b 2e 65 65 2f 75 70 6c 6f 61 64 2f 66 69 6c 65 73 2f 45 53  ...https://sk.ee/upload/files/ES
0x00000020: 54 45 49 44 2d 53 4b 5f 32 30 31 35 2e 70 65 6d 2e 63 72 74                                      TEID-SK_2015.pem.crt            

Символ проблемы - 0xe2 0x80 0x8bZERO WIDTH JOINER , что предшествует https.

1
SergA

Я просто перекомпилировал curl с параметрами конфигурации, указывающими на папку библиотеки openssl 1.0.2g и папку include, и я все еще получаю это сообщение. Когда я выполняю ldd на curl, он не показывает, что он использует libcrypt.so или libssl.so, поэтому я предполагаю, что это должно означать, что, хотя make и make install успешно выполнялись без ошибок, тем не менее curl не поддерживает HTTPS? Сконфигурировать и сделать было следующим образом:

./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

Я должен упомянуть, что libssl.so.1 находится в /local/scratch/PACKAGES/local/lib. Неясно, должна ли опция --with-ssl указывать туда или на каталог, куда установщик openssl поместил файл openssl.cnf. Я выбрал последнее. Но если он должен был быть первым, make должен был потерпеть неудачу с ошибкой, что он не мог найти библиотеку.

0
tedtoal

Указание протокола в URL может решить вашу проблему.

У меня была похожая проблема (при использовании клиента curl php):

Я передавал domain.com вместо sftp: //domain.com , что привело к этой запутанной ошибке:

Протокол "http" не поддерживается или отключен в libcurl, заняло 0 секунд.

0
ntt

Похоже, уже есть так много Ответов, но проблема, с которой я столкнулся, заключалась в двойных кавычках . Между ними есть разница:

а также 

"

Изменение 1-й двойной кавычки на вторую сработало для меня, ниже приведен пример curl:

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