宝塔部署QQ机器人,提示OpenSSL 1.0.2k-fips 26 Jan 2017

1、报错预览

Traceback (most recent call last):
  File "/www/wwwroot/python/bot-one/main.py", line 5, in <module>
    import requests
  File "/www/wwwroot/python/bot-one/343ae0eb0d491a10a1a00c0621b03ed0_venv/lib/python3.9/site-packages/requests/__init__.py", line 43, in <module>
    import urllib3
  File "/www/wwwroot/python/bot-one/343ae0eb0d491a10a1a00c0621b03ed0_venv/lib/python3.9/site-packages/urllib3/__init__.py", line 41, in <module>
    raise ImportError(
ImportError: urllib3 v2.0 only supports OpenSSL 1.1.1+, currently the 'ssl' module is compiled with 'OpenSSL 1.0.2k-fips  26 Jan 2017'. See: https://github.com/urllib3/urllib3/issues/2168

2、原因分析

项目中使用了requestsrequests使用了urllib3 , urllib3 v2.0要求OpenSSL 1.1.1+,而我的系统版本是OpenSSL 1.0.2k-fips 26 Jan 2017,那么给他进行升级就行。

3、解决方法

方案一:

宝塔部署QQ机器人,提示OpenSSL 1.0.2k-fips 26 Jan 2017_第1张图片
根据报错的提示,找到对应的文档,由于我的系统是centos7,所以版本估计是1.0.2,可以使用openssl version进行查看,然后确定是1.0.2。
如果centos8的openssl默认是1.1.1+的话,那么可以升级系统到centos8,即可解决这个问题,由于我的系统部署的有其他的东西,没有贸然升级,选择了第二种方案。

方案二:

升级openssl版本,按照下面步骤,一顿输出,就会有结果

1、查看版本
openssl version
ssh -V

2、下载版本
wget --no-check-certificate https://www.openssl.org/source/openssl-1.1.1t.tar.gz

3、解压
tar -zxf openssl-1.1.1t.tar.gz

4、编译安装
cd openssl-1.1.1t
./config -Wl,-rpath=/usr/lib64 --prefix=/usr/local/openssl --openssldir=/usr/local/openssl --libdir=/usr/lib64
make -j 4 && make install

5、替换
mv /usr/bin/openssl /usr/bin/openssl.bak
ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl

6、验证结果
openssl version

如图所示,则升级成功
宝塔部署QQ机器人,提示OpenSSL 1.0.2k-fips 26 Jan 2017_第2张图片

4、宝塔操作

openssl升级后,在宝塔中进行如下操作
1、删除项目
宝塔部署QQ机器人,提示OpenSSL 1.0.2k-fips 26 Jan 2017_第3张图片

2、删除python版本
宝塔部署QQ机器人,提示OpenSSL 1.0.2k-fips 26 Jan 2017_第4张图片

3、安装python版本
安装之前的版本就行
宝塔部署QQ机器人,提示OpenSSL 1.0.2k-fips 26 Jan 2017_第5张图片

4、创建项目
创建你删除的项目
宝塔部署QQ机器人,提示OpenSSL 1.0.2k-fips 26 Jan 2017_第6张图片

5、重启服务器&面板

宝塔部署QQ机器人,提示OpenSSL 1.0.2k-fips 26 Jan 2017_第7张图片

你可能感兴趣的:(从0入坑Python,python,centos,linux)