我正在尝试在Ubuntu 11.04上安装Rails环境。当我启动命令rvm install 1.9.2——with-openssl-dir=/usr/local时,收到以下错误:

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

如何解决这个问题?


当前回答

用flag -with-darwinssl解决了这个问题

转到带有curl源代码的文件夹

请在这里下载https://curl.haxx.se/download.html

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

重新启动控制台就完成了!

其他回答

我刚刚用指向openssl 1.0.2g库文件夹和包含文件夹的配置选项重新编译了curl,我仍然得到了这条消息。当我对curl执行ldd时,它没有显示它使用libcrypt。或者libssl。所以,所以我假设这一定意味着即使make和make安装成功没有错误,但curl不支持HTTPS ?配置和make如下:

./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应该会失败,并出现无法找到库的错误。

我只需要修改“http://webname…”变成“http://webname……”

注意这句话。它应该是double(")而不是single(')。

我的问题是由于没有显示UTF符号。我从浏览器中复制链接(在我的情况下,这是一个nginx轨道),并在剪贴板中得到以下内容:

$ 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|

问题出现在https之前的0xe2 0x80 0x8b序列中。这个序列是一个用UTF-8编码的零宽度JOINER。

在https网站上使用curl时得到了相同的错误

curl https://api.dis...

正如ganesh指出的,这是因为我的curl版本没有启用SSL。我回去下载了带有SSL的版本,效果很好。

我遇到了这个问题,原来在https之前有一个空格,导致了这个问题。“Https://”vs“Https://”