解決pip is configured with locations that require TLS/SSL, however the ssl module in Python is not ...

一、遇到的問題

安裝 python3.7 碰到此問題,安裝好以后,執(zhí)行 python3 安裝django, 出現(xiàn)錯(cuò)誤 ImportError: No module named _ssl 。 該錯(cuò)誤表現(xiàn)在 pip install 時(shí)會(huì)報(bào) pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.

在網(wǎng)上找了很多資料都不行,最后找到了一個(gè)方法是將 openssl 升級(jí) 到 1.1.x之后的版本是有效的。

二、升級(jí)過程

一、下載 openssl 編譯安裝

openssl 官方下載地址:https://www.openssl.org/source/

wget https://github.com/openssl/openssl/archive/OpenSSL_1_1_1d.tar.gz

解壓

tar -zxvf OpenSSL_1_1_1d.tar.gz

二、編譯安裝

進(jìn)入openssl-OpenSSL_1_1_1d

cd  openssl-OpenSSL_1_1_1d

指定安裝路徑并編譯

./config --prefix=/usr/local/openssl // 指定安裝路徑
make && make install

三、替換當(dāng)前系統(tǒng)的舊版本 openssl 「先保存原來的」

mv /usr/bin/openssl /usr/bin/openssl.old
mv /usr/lib64/openssl /usr/lib64/openssl.old
mv /usr/lib64/libssl.so /usr/lib64/libssl.so.old
ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
ln -s /usr/local/openssl/include/openssl /usr/include/openssl
ln -s /usr/local/openssl/lib/libssl.so /usr/lib64/libssl.so
echo "/usr/local/openssl/lib" >> /etc/ld.so.conf
ldconfig -v // 建立動(dòng)態(tài)鏈接

四、最后查看當(dāng)前系統(tǒng) openssl 版本

openssl version

五、重新編譯Python3.7

進(jìn)入解壓后的Python目錄

cd Python-3.7.1
./configure --prefix=/usr/local/python3 --with-openssl=/usr/local/openssl
make
make install
ln -s /usr/local/python3/bin/python3 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3

六、查看是否安裝成功

python3 -V

python 3.7.1********

pip3 -V

pip 10.0.1**********

七、驗(yàn)證

[root@localhost Python-3.7.1]# python3
Python 3.7.1 (default, Sep 10 2020, 14:20:03) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-23)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import django
>>> django.VERSION
(3, 1, 1, 'final', 0)
>>> exit();
最終完成django安裝
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容