Windows Curl Https
- HTTP & SOCKS
- Price $1.3/IP
- Locations: DE, RU, US
- 5% OFF coupon: APFkysWLpG
Windows 10 – CURL Protocol “‘https” not supported or …
Windows 10 – CURL Protocol “’” not supported or disabled in libcurl Error
Lately I had to use the CURL command line tool to debug a Web Service Endpoint connection.
But every time I ran this I got this Error message?
Note: Unnecessary use of -X or –request, GET is already inferred.
* Protocol “‘” not supported or disabled in libcurl
* Closing connection -1
curl: (1) Protocol “‘” not supported or disabled in libcurl
Actually this Error is putting you on the wrong leg!
It’s nothing to do with unsupported protocol but rather with wrong command line formatting.
In the windows version of CURL, you need to enclose the command with double quotes, instead of single quotes.
This will not work!
curl -v -u -X GET ‘priority:3″‘
So you need to start and end with double quotes!
But this will give an other issue where the query string needs double quotes as well?
This is how it should look:
curl -v -u -X GET ”
Where you replace the double quotes in the Query string with the URL encode version being%22
This entry was posted on Tuesday, August 6th, 2019 at 2:40 pm and is filed under Client, Windows. You can follow any responses to this entry through the RSS 2. 0 feed.
You can leave a response, or trackback from your own site.
« Previous Post
Next Post »
- HTTP & SOCKS
- unlimited bandwidth
- Price starting from $0.08/IP
- Locations: EU, America, Asia
curl : (1) Protocol https not supported or disabled in libcurl
I’m trying to install the Rails environments on Ubuntu 11. 04. When I launch the command rvm install 1. 9. 2 –with-openssl-dir=/usr/local the following error is received:
curl: (1) Protocol not supported or disabled in libcurl
How can this be resolved?
ΩmegaMan24. 5k9 gold badges85 silver badges103 bronze badges
asked Jul 30 ’11 at 17:07
Got the answer HERE for windows,
it says there that:
curl -XPUT ‘localhost:9200/api/twittervnext/tweet’
Woops, first try and already an error:
curl: (1) Protocol ‘ not supported or disabled in libcurl
The reason for this error is kind of stupid, Windows doesn’t like it when you are using single quotes for commands. So the correct command is:
curl –XPUT “localhost:9200/api/twittervnext/tweet”
melpomene80. 3k6 gold badges71 silver badges132 bronze badges
answered Jun 15 ’14 at 17:53
I ran into this problem and turned out that there was a space before the which was causing the problem. ” ” vs “”
answered Dec 15 ’14 at 21:18
jbrahyjbrahy3, 62737 silver badges47 bronze badges
Looks like there are so many Answers already but the issue I faced was with double quotes.
There is a difference in between:
Changing the 1 st double quote to the second worked for me, below is the sample curl:
curl -X PUT -u xxx:xxx -T ”
answered Jan 14 ’19 at 18:23
Pavan_ObjPavan_Obj9391 gold badge9 silver badges20 bronze badges
I encountered the same problem while trying to install rvm for ruby.
found the solution:
after extracting curl (tar) in downloads folder of 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)
answered Oct 9 ’12 at 11:24
R TR T4, 0493 gold badges34 silver badges46 bronze badges
In my case, HTTPS protocol was not supported by libcurl at the first place. To find out which protocols are supported and which are not, I checked the curl version using command:
It provided information as follows:
curl 7. 50. 3 (x86_64-apple-darwin15. 6. 0) libcurl/7. 3 SecureTransport zlib/1. 2. 5
Protocols: dict file ftp ftps gopher imap imaps ldap ldaps pop3 pop3s rtsp smb smbs smtp smtps telnet tftp
Features: IPv6 Largefile NTLM NTLM_WB SSL libz UnixSockets
where protocol happens to be not supported.
Then I re-installed curl and installed it using the following commands(after unpacked):. /configure –with-darwinssl (enable ssl communication in mac)
sudo make install
And after several minutes of work, Problems resolved!
Then I re-run the curl version command, it showed:
HTTPS protocol showed up!
Finally, a useful site to refer when you run into curl problems.
Siddharth9, 00014 gold badges79 silver badges136 bronze badges
answered Sep 16 ’16 at 3:02
someonesomeone3592 gold badges5 silver badges17 bronze badges
I solve it just by changing ‘webname… ‘ to ”
Notice the quote. It should be double (“) instead of single (‘).
answered Dec 2 ’15 at 20:15
Aminah NurainiAminah Nuraini15k7 gold badges76 silver badges98 bronze badges
Solved this problem with flag –with-darwinssl
Go to folder with curl source code
Download it here
sudo. /configure –with-darwinssl
restart your console and it is done!
answered Jun 22 ’16 at 14:04
This is specifically mentioned in the libcurl FAQ entry “Protocol xxx not supported or disabled in libcurl”.
For your pleasure I’m embedding the explanation here too:
When passing on a URL to curl to use, it may respond that the
particular protocol is not supported or disabled. The particular way
this error message is phrased is because curl doesn’t make a
distinction internally of whether a particular protocol is not
supported (ie never got any code added that knows how to speak that
protocol) or if it was explicitly disabled. curl can be built to only
support a given set of protocols, and the rest would then be disabled
or not supported.
Note that this error will also occur if you pass a wrongly spelled
protocol part as in “htpt” or as in the less evident
case if you prefix the protocol part with a space as in “.
answered Sep 2 ’11 at 6:49
Daniel StenbergDaniel Stenberg46. 2k13 gold badges122 silver badges183 bronze badges
My problem was coused by not displayed UTF symbol. I copy the link from the browser (in my case it was an nginx track) and got the following in clipboard:
$ echo -n “ | hexdump -C
00000000 e2 80 8b 68 74 74 70 73 3a 2f 2f 73 6b 2e 65 65 |… |
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 ||
00000030 2e 63 72 74 ||
The problem is in the sequence 0xe2 0x80 0x8b, which precedes. This sequence is a ZERO WIDTH JOINER encoded in UTF-8.
answered Sep 20 ’17 at 9:57
SergASergA89412 silver badges20 bronze badges
Got the same error when using curl on site like
as pointed out by ganesh, it was because my version of curl wasn’t ssl enabled. went back and downloaded the version with ssl and it worked fine.
answered Aug 19 ’15 at 17:55
I just recompiled curl with configure options pointing to the openssl 1. 0. 2g library folder and include folder, and I still get this message. When I do ldd on curl, it does not show that it uses either or, so I assume this must mean that even though the make and make install succeeded without errors, nevertheless curl does not have HTTPS support? Configure and make was as follows:. /configure –prefix=/local/scratch/PACKAGES/local –with-ssl=/local/scratch/PACKAGES/local/openssl/openssl-1. 2g –includedir=/local/scratch/PACKAGES/local/include/openssl/openssl-1. 2g
I should mention that is in /local/scratch/PACKAGES/local/lib. It is unclear whether the –with-ssl option should point there or to the directory where the openssl install placed the file. I chose the latter. But if it were supposed to be the former, the make should have failed with an error that it couldn’t find the library.
techraf55. 9k23 gold badges157 silver badges176 bronze badges
answered Mar 30 ’16 at 1:00
tedtoaltedtoal9018 silver badges20 bronze badges
Specifying the protocol within the url might solve your problem.
I had a similar problem (while using curl php client):
I was passing instead of s which lead to this confusing error:
Protocol “” not supported or disabled in libcurl, took 0 seconds.
answered Feb 16 ’17 at 17:25
nttntt3863 silver badges8 bronze badges
Not the answer you’re looking for? Browse other questions tagged ruby-on-rails curl openssl libcurl ubuntu-11. 04 or ask your own question.
cURL – Wikipedia
cURLExample output from curl -OOriginal author(s)Daniel StenbergDeveloper(s)Contributors to the cURL projectInitial release1996; 25 years agoStable release7. 79. 1
/ 22 September 2021; 15 days
Written inCOperating system
PlatformCross-platformTypeFTP client / HTTP clientLicensecurl
cURL (pronounced like “curl”, /kɜːl/) is a computer software project providing a library (libcurl) and command-line tool (curl) for transferring data using various network protocols. The name stands for “Client URL”,  which was first released in 1996. 
cURL was first released in 1996.  It was originally named get and then became urlget before adopting the current name of cURL.  The original author and lead developer is the Swedish developer Daniel Stenberg, who created cURL because he wanted to automate the fetching of currency exchange rates for IRC users. 
libcurl is a free client-side URL transfer library,  supporting cookies, DICT, FTP, FTPS, Gopher, HTTP/1 (with HTTP/2 and HTTP/3 support), HTTP POST, HTTP PUT, HTTP proxy tunneling, HTTPS, IMAP, Kerberos, LDAP, MQTT, POP3, RTSP, RTMP, SCP, SMTP, and SMB. The library supports the file URI scheme, SFTP, Telnet, TFTP, file transfer resume, FTP uploading, HTTP form-based upload, HTTPS certificates, LDAPS, proxies, and user-plus-password authentication. 
The libcurl library is portable. It builds and works identically on many platforms, including AIX, AmigaOS, Android, BeOS, BlackBerry Tablet OS and BlackBerry 10,  OpenVMS, Darwin, DOS, FreeBSD, HP-UX, HURD, iOS, IRIX, Linux, macOS, NetBSD, NetWare, OpenBSD, OS/2, QNX Neutrino, RISC OS, Solaris, Symbian, Tru64, Ultrix, UnixWare, and Microsoft Windows.
The libcurl library is free, thread-safe and IPv6 compatible. Bindings are available for more than 50 languages, including C/C++, Java, PHP and Python. 
The libcurl library supports GnuTLS, mbed TLS, NSS, gskit on IBM i, SChannel on Windows, Secure Transport on macOS and iOS, SSL/TLS through OpenSSL, Boringssl, libressl, AmiSSL, wolfSSL, BearSSL, Mesalink and rustls. 
cURL is a command-line tool for getting or sending data including files using URL syntax. Since cURL uses libcurl, it supports every protocol libcurl supports. 
cURL supports HTTPS and performs SSL certificate verification by default when a secure protocol is specified such as HTTPS. When cURL connects to a remote server via HTTPS, it will obtain the remote server certificate, then check against its CA certificate store the validity of the remote server to ensure the remote server is the one it claims to be. Some cURL packages are bundled with CA certificate store file. There are several options to specify a CA certificate such as –cacert and –capath. The –cacert option can be used to specify the location of the CA certificate store file. In the Windows platform, if a CA certificate file is not specified, cURL will look for a CA certificate file name “” in the following order:
Directory where the cURL program is located.
Current working directory.
Windows system directory.
Directories specified in the%PATH% environment variables. 
cURL will return an error message if the remote server is using a self-signed certificate, or if the remote server certificate is not signed by a CA listed in the CA cert file. -k or –insecure option can be used to skip certificate verification. Alternatively, if the remote server is trusted, the remote server CA certificate can be added to the CA certificate store file.
Basic use of cURL involves simply typing curl at the command line, followed by the URL of the output to retrieve:
cURL defaults to displaying the output it retrieves to the standard output specified on the system (usually the terminal window). So running the command above would, on most systems, display the source-code in the terminal window. The -o flag can be used to store the output in a file instead:
$ curl -o
More options that change the tool’s behavior are available.
curl-loader – an open-source testing tool based on cURL
libwww – an early library that comes with a command line interface
PowerShell – the iwr (Invoke-WebRequest) Windows PowerShell had functionality akin to curl; class Web-client too. 
Web crawler – an internet bot that can crawl the web
Wget – similar command-line tool with no associated library but capable of recursive downloading.
^ Stenberg, Daniel (20 March 2015). “curl, 17 years old today”. Retrieved 20 March 2015.
^ a b “History of curl – How curl Became Like This”. curl. Archived from the original on September 30, 2017. Retrieved November 17, 2016. Daniel simply adopted an existing command-line open-source tool, get, that Brazilian Rafael Sagula had written and recently release version 0. 1 of. After a few minor adjustments, it did just what he needed. […] HttpGet 1. 0 was released on April 8th 1997 with brand new HTTP proxy support. […] Stenberg was spending time writing an IRC bot for an Amiga related channel on EFnet. He then came up with the idea to make currency-exchange calculations available to Internet Relay Chat (IRC) users.
^ “Release 7. 1”. 22 September 2021. Retrieved 23 September 2021.
^ “curl License”.
^ “curl – copyright”.
^ “curl – Frequently Asked Questions”.
^ Stenberg, Daniel. “Origin of the name”. Retrieved 2018-04-25.
^ a b “History of curl”. Archived from the original on September 29, 2021.
^ “Changelog”. 4 January 2020. Retrieved 4 January 2020. The first curl release. The tool was named urlget before this. And get before that.
^ Stenberg, Daniel (4 January 2020). “Restored complete curl changelog” (html). Haxx Se. Retrieved 2 January 2020.
^ Jones, M. Tim (8 September 2009). “Conversing through the Internet with cURL and libcurl – Using libcurl with C and Python”. IBM Developerworks. Archived from the original on 14 April 2015. Retrieved 12 September 2018.
^ Stenberg, Daniel (5 August 2019). “09: disable HTTP/0. 9 by default in both tool and library”. GitHub. Archived from the original (html) on 5 August 2019. Retrieved 5 August 2019. As the plan has been laid out in Deprecated. Update docs accordingly and verify in test 1174.
^ a b “curl – How To Use”.
^ “Open Source Components for the Native SDK for BlackBerry Tablet OS”. Archived from the original on 2013-01-27. Retrieved 2017-09-19.
^ “libcurl bindings”.
^ “curl – SSL CA Certificates”.
^ Del, Ryan (2 March 2018). “Comandi equivalenti a cURL e Wget per Windows command-line con Powershell” [cURL and Wget equivalent commands for Windows command-line with Powershell] (html). Ryadel (in Italian). Per emulare il comportamento del comando Linux cURL, è sufficiente creare un file 1 contenente la seguente riga di codice
Comparison of cURL vs other open source download tools
Comparison of cURL vs wget
Frequently Asked Questions about windows curl https
Does cURL support https?
cURL is a command-line tool for getting or sending data including files using URL syntax. Since cURL uses libcurl, it supports every protocol libcurl supports. cURL supports HTTPS and performs SSL certificate verification by default when a secure protocol is specified such as HTTPS.
How do I cURL a URL in Windows?
WindowsIn Windows, create a folder called curl in your C: drive.Unzip the downloaded file and move the curl.exe file to your C:\curl folder.Move the cacert. … Add the curl folder path to your Windows PATH environment variable so that the curl command is available from any location at the command prompt.
How do I use the cURL command in Windows?
Invoke curl.exe from a command window (in Windows, click Start > Run and then enter “cmd” in the Run dialog box). You can enter curl –help to see a list of cURL commands.