django安装_pip安装Django提示ssl不可用?如何解决?

概述

场景:在用pip安装django时提示SSL方面的问题,具体报错如下:

pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
0261367200de51a4ff734850c788df84.png

思路

系统版本centos7,其中openssl的版本为OpenSSL 1.0.2k-fips 26 Jan 2017,而python3.7需要的openssl的版本为1.0.2或者1.1.x,需要对openssl进行升级,并重新编译python3.7.0,yum 安装的openssl 版本都比较低。


解决过程

1、查看openssl版本

openssl version -a
ddee99c85a3808753f36f787141e8bb4.png

2、下贼openssl

wget https://www.openssl.org/source/openssl-1.1.1a.tar.gztar -zxvf openssl-1.1.1a.tar.gzcd openssl-1.1.1a
0bd4a5ec3f6e147b3a6b5003de8a3e67.png

3、编译安装

./config --prefix=/usr/local/openssl make&& make install
e7ce1197a1b7290c99d5c94945e5f5f6.png136384029235a10d4a5ffeb59bc4ab34.png

4、备份原配置

mv /usr/bin/openssl /usr/bin/openssl.bakmv /usr/include/openssl/ /usr/include/openssl.bak

5、新版配置

ln -s /usr/local/openssl/include/openssl /usr/include/opensslln -s /usr/local/openssl/lib/libssl.so.1.1 /usr/local/lib64/libssl.soln -s /usr/local/openssl/bin/openssl /usr/bin/openssl

6、修改系统配置

## 写入openssl库文件的搜索路径echo "/usr/local/openssl/lib" >> /etc/ld.so.conf## 使修改后的/etc/ld.so.conf生效 ldconfig -v

7、查看openssl版本

openssl version
0265f03015ec9586df49a59475d87827.png

8、重新安装python

./configure --prefix=/usr/local/python3 --with-openssl=/usr/local/opensslmake && make installln -fs /usr/local/python/bin/python3.7 /usr/bin/pythonln -fs /usr/local/python/bin/pip3 /usr/bin/pip
92b3c6399150c37705a7e1c601caef0d.png

9、测试pip功能

pip install django
466a2ff6ec146304937d871b589fd296.png

觉得有用的朋友多帮忙转发哦!后面会分享更多devops和DBA方面的内容,感兴趣的朋友可以关注下~

e4ac7040f3a052a52068d79f094ac699.gif


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部