1.报错介绍

博主今日在使用pycharm虚拟环境创建Django工程时,使用下图方式创建Django工程时,
在这里插入图片描述

出现的错误如下所示:
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

2.关键报错信息

其中关键的报错大概如下所示:

  • WARNING: pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
    之后是

  • Could not fetch URL https:*******: There was a problem confirming the ssl certificate:
    Can’t connect to HTTPS URL because the SSL module is not available. - skipping

  • 使用python中的pip安装一些组件,都报错,与 SSL有关:

  • Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by ‘SSLError(SSLError(1, ‘_ssl.c:504: error:1407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version’),)’: /simple/pip/

  • 之后的错误表现为无法添加任何包到该虚拟环境中,也无法升级低版本的包。

3.报错分析

进行到这里,博主百思不得其解,按常理说这样创建不可能有错误,但还是出错了。
查阅网上各种类似报错的解决方案,如安装编译包openssl ,添加到环境变量等并不好使,仍然没有解决。

注:在这里博主给出解决该错误的一种解决方法,供各位小伙伴儿参考,如果不适用你的报错情况,可以下方留言,我们一起讨论。

博主根据使用虚拟环境创建Django工程失败的之后的残留文件分析,怀疑导致该错误出现的原因为以下两点:

1. pip下载包,以及pip的依赖包并未及时更新到最新版本,而使用虚拟环境创建时,又默认使用现有版本的pip包进行自动下载所需的其他包文件,由于pip包不是最新的,所以导致了后面的一系列错误。
2. 使用虚拟环境下载时相关包自动从 https://pypi.python.org/simple 这个网址下载,而这个网址可能会出现访问不成功的情况。猜测换成国内镜像源可能会解决 基于以上猜测,提出两种解决方案,如下述所示。

注:可能解决方案2更有用

4.解决方案1

基于上述分析,博主首先采用如下方式进行创建任意一个工程,即使用本地解释器来创建一个工程,
在这里插入图片描述
创建完成之后,进入settings,或在命令行窗口,把其中的pip下载工具包及相关依赖包升级到最新版本,再重新使用虚拟环境来创建Django工程即可成功。

5.解决方案2

(1)在系统目录C:\Users\用户\AppData\Roaming新建pip文件夹;

(2)在pip文件夹下新建pip.ini文件,并写入如下配置:

在这里插入图片描述
在这里插入图片描述

ini文件可以拿记事本打开并编辑,编辑内容如下所示:

[global]

index-url = http://mirrors.aliyun.com/pypi/simple/

[install]

trusted-host = mirrors.aliyun.com

注:换成国内的一些其他的pip安装源也可:切换了国内的安装源,上述错误就被排除了。

执行解决方案2,之后,再重新使用虚拟环境创建Django工程没有出现错误。成功页面如下所示
在这里插入图片描述