Reputation: 501
I'm trying to install Django on a Windows 10 system.
Whatever I try to install with pip on cmd, I get these errors:
Collecting django
Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLError(1, '[SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:1056)'))': /simple/django/
Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLError(1, '[SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:1056)'))': /simple/django/
Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLError(1, '[SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:1056)'))': /simple/django/
Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLError(1, '[SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:1056)'))': /simple/django/
Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLError(1, '[SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:1056)'))': /simple/django/
Could not fetch URL https://pypi.org/simple/django/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host='pypi.org', port=443): Max retries exceeded with url: /simple/django/ (Caused by SSLError(SSLError(1, '[SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:1056)'))) - skipping
Could not find a version that satisfies the requirement django (from versions: )
No matching distribution found for django
Could not fetch URL https://pypi.org/simple/pip/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host='pypi.org', port=443): Max retries exceeded with url: /simple/pip/ (Caused by SSLError(SSLError(1, '[SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:1056)'))) - skipping
I've tried a lot of things from other questions but none is working.
pip install --upgrade pip --trusted-host pypi.org --trusted-host files.pythonhosted.org
pip install --trusted-host pypi.python.org --trusted-host files.pythonhosted.org --trusted-host pypi.org django
Upvotes: 27
Views: 68425
Reputation: 98
Try finding and removing OpenSSL (OS level installation), if it's installed on your system.
In my case, I installed OpenSSL on Windows 10 (for some other development tasks) long time ago and forgot about it, which was the main culprit. I uninstalled it, and it solved the issue.
Upvotes: 0
Reputation: 2691
Setting up my proxy correctly fixed this for me as well. The problem was that I used the https protocol for my HTTPS_PROXY and https_proxy environment variables.
Use:
HTTPS_PROXY="http://username:[email protected]:8080"
https_proxy="http://username:[email protected]:8080"
Do not use:
HTTPS_PROXY="https://username:[email protected]:8080"
https_proxy="https://username:[email protected]:8080"
Upvotes: 60
Reputation: 3766
For me it was the system proxy. The trusted-host
flag, to my knowledge, is used when pip wants to query an insecure http
index and pip defaults to query only SSL secured indexes.
Upvotes: 0
Reputation: 424
My pip was working fine (Windows 7 and Python 3.8.6) until I upgraded pip from version 20.2.1 to 20.3.1, after which I also got the error:
SSL: WRONG_VERSION_NUMBER error.
This is reproducible. I uninstalled and reinstalled several times to confirm.
Solution (well, workaround): don't upgrade pip to 20.3.1.
Note: pip 20.3.1 works fine in my Windows 7/Python 3.9.1 environment.
Upvotes: 12
Reputation: 501
I asked a colleague who automatically knew what to do. I just had to set the proxy variables:
set https_proxy=http://username:[email protected]:8080
set http_proxy=http://username:[email protected]:8080
and it works.
Upvotes: 11
Reputation: 455
Check your proxy setting. You can use this command
pip install <package> --trusted-host pypi.org --trusted-host files.pythonhosted.org --proxy="<IP>:<port>"
Upvotes: 4