파이썬(Python)을 사용하신다면 pip를 안 써보신 분이 없으실 겁니다.
SSLError("Can't connect to HTTPS URL because the SSL module is not available.")'
pip로 패키지를 인스톨하려고 할 때 이런 에러 메시지를 보신 적이 있나요?
이번에 이 에러를 보고 해결했던 방법을 알려드리고자 합니다.
PC에 Windows를 새로 설치하고 아나콘다(Anaconda)와 PyCharm을 사용해 개발환경을 만들며 마주하게 된 문제였습니다.
아나콘다(Anaconda)는 Data Science에 특화된 파이썬(Python) 패키지들을 미리 모아둔 것이며
PyCharm은 파이썬(Python)개발에 특화된 IDE입니다.
PyCharm으로 생성한 가상 환경(venv)에서 pip를 이용해서 패키지를 설치하려고 했는데 SSLError라는 일련의 메시지를 띄우며 패키지 인스톨 안됐습니다.
출력된 에러 메시지는 아래와 같습니다.
WARNING: pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Can't connect to HTTPS URL because the SSL module is not available.")': /simple/numpy/
WARNING: Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Can't connect to HTTPS URL because the SSL module is not available.")': /simple/numpy/
SSLError("Can't connect to HTTPS URL because the SSL module is not available.")': /simple/numpy/
WARNING: Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Can't connect to HTTPS U
WARNING: Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Can't connect to HTTPS
SSLError("Can't connect to HTTPS URL because the SSL module is not available.")': /simple/numpy/
WARNING: Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Can't connect to HTTPS URL because the SSL module is not available.")': /simple/numpy/
Could not fetch URL https://pypi.org/simple/numpy/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host='pypi.org', port=443): Max retries exceeded with url: /simple/numpy/ (Caused by SSLError("Can't connect to
HTTPS URL because the SSL module is not available.")) - skipping
ERROR: Could not find a version that satisfies the requirement numpy (from versions: none)
ERROR: No matching distribution found for numpy
WARNING: pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
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("Can't connect to HTT
PS URL because the SSL module is not available.")) - skipping
TLS/SSL를 사용해야 되는데 SSL 모듈이 없다고 합니다.
패키지 인스톨을 할 때 --trusted-host를 사용하거나 https로 연결하는 것을 http로 연결하도록 수정하라거나 OpenSSL을 설치하라와 같이 다양한 방법들이 있었습니다.
저는 임시방편 같은 --trusted-host로 등록하거나 http로 연결하는 방법을 사용하고 싶지 않아서 OpenSSL을 설치하는 쪽으로 작업을 해봤습니다만 실패했습니다.
OpenSSL 문제가 아니었습니다. 아나콘다(Anaconda) 내부에 이미 OpenSSL도 설치되어 있었습니다.
혹시 몰라 OpenSSL 설치 방법을 정리해둔 링크를 남깁니다.
OpenSSL 윈도우에서 설치하는 방법
OpenSSL을 설치했는데도 문제가 지속되니 그럼 뭐가 문제일까 살펴보다 보니 Path 설정을 안 해줬더군요
아나콘다(Anaconda) 설치 도중에 시스템 Path 등록하는 부분을 체크하지 않고 설치했었습니다.
Path 설정을 체크하고 재설치를 하니 제대로 동작했습니다.
재설치가 싫으신 분들은 Path에 아래 경로들을 등록해주세요.
저는 C:\anaconda3에 아나콘다(Anaconda)를 설치했습니다.
자기 환경에 맞게 수정해서 등록하시면 됩니다.
C:\anaconda3
C:\anaconda3\Library\mingw-w64\bin
C:\anaconda3\Library\usr\bin
C:\anaconda3\Library\bin
C:\anaconda3\Scripts
이렇게 하고 나니 정상적으로 잘 동작했습니다.
OpenSSL이 아나콘다(Anaconda) 내에 있다는 것도 Path에 등록된 경로를 살펴보다 알게 되었습니다.
처음 시도했던 OpenSSL도 설치하고 Path 설정만 해줬으면 동작하지 않았을까 하는 생각이 드네요.
'IT > 개발' 카테고리의 다른 글
Nosql MongoDB 무료 사용 방법 (MongoDB Atlas) (0) | 2021.05.10 |
---|---|
안드로이드 ADB를 이용한 무선 디버깅 방법 (WiFi 디버깅) (0) | 2021.04.17 |
안드로이드 USB 디버깅 활성화 방법 (개발자 옵션 활성화) (0) | 2021.04.16 |
안드로이드 스튜디오 Waiting for all target devices to come online 무한로딩 문제 (1) | 2021.04.12 |
OpenSSL 윈도우에서 설치하는 방법 (6) | 2020.11.02 |
Mysql DB에서 기간 검색 (0) | 2019.02.21 |
NW.js(Node-webkit) EXE 파일 만들기 (0) | 2019.01.21 |
JSTL core 태그 (0) | 2014.12.30 |