首页
站点统计
技术支持
友链
关于我
Search
1
CentOS7官方停止支持,yum源变更
229 阅读
2
苹果笔记本实现用户登录钉钉通知功能
219 阅读
3
麒麟操作系统安装达梦数据库DM8 V8版本
208 阅读
4
Ubuntu22.04配置vsftp服务
190 阅读
5
台式电脑DIY配置单之2024.06
186 阅读
默认分类
电脑3C
Linux运维
生活杂谈
游戏娱乐
Windows专题
网络互联
登录
Search
标签搜索
PHP
Linux
麒麟OS
Win11
电脑
Typecho
Mac OS
雪中悍刀行
Redis
Joe
windows
祝福
SHELL
Mysql
达梦数据库
阿里云
SSH
CentOS
域名转移
网络
清阳
累计撰写
37
篇文章
累计收到
13
条评论
首页
栏目
默认分类
电脑3C
Linux运维
生活杂谈
游戏娱乐
Windows专题
网络互联
页面
站点统计
技术支持
友链
关于我
搜索到
1
篇与
Python
的结果
2024-12-29
CentOS7.9 python3 Can‘t connect to Https URL Because the SSL module is not available(已解决)
CentOS7.9 python3 Can‘t connect to Https URL Because the SSL module is not available(已解决)问题概览CentOS7.9编译安装Python3.10运行python脚本的时候报Can‘t connect to Https URL Because the SSL module is not available.当然,这个问题和python3 -c "import ssl" 报错是同一个问题经排查发现是系统openssl版本过低导致的。python3.10依赖的ssl 1.1.1以上的版本。{message type="success" content="注意:其实在编译python3过程中,会输出openssl版本过低的信息,只不过没有突出显示,不仔细查看,难以发现。"/}OK,发现问题之后,已经查明的原因,解决起来就容易多了。我们重新编译安装Openssl,升级系统的openssl版本到1.1.1以上即可解决。这里我们升级至 1.1.1w(openssl官网有更新的3.x ssl版本,但是我们服务器是centos7属于比较旧的版本,对 ssl 3.x兼容性有问题,所以先不用3.x的)编译安装Openssl#安装前先检查Openssl的版本 openssl version #OpenSSL 1.0.2k-fips 26 Jan 2017 yum install perl-core zlib-devel -y cd /usr/local/src wget -S “https://github.com/openssl/openssl/releases/download/OpenSSL_1_1_1w/openssl-1.1.1w.tar.gz” tar -zxvf openssl-1.1.1w.tar.gz cd openssl-1.1.1w ./config --prefix=/usr/local/openssl make && make install mv /usr/bin/openssl /usr/bin/openssl.bak mv /usr/include/openssl /usr/include/openssl.bak ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl ln -s /usr/local/openssl/include/openssl /usr/local/openssl echo "/usr/local/openssl/lib" > /etc/ld.so.conf.d/openss111w.conf #然后再次检查openssl版本 openssl version #OpenSSL 1.1.1w 11 Sep 2023 (Library: OpenSSL 1.1.1k FIPS 25 Mar 2021) #openssl的目录路径 openssl version -d 》》 OPENSSLDIR: "/usr/local/openssl/ssl"openssl升级完成编译安装python12yum install libffi-devel.x86_64 libdb-devel uuid-devel.x86_64 tk-devel.x86_64 zlib-static.x86_64 zlib-devel -y cd /usr/local/src/ wget https://www.python.org/ftp/python/3.12.6/Python-3.12.6.tgz tar -zxvf Python-3.12.6.tgz cd Python-3.12.6 openssl version -d #这个命令找到openssl根目录 》》 OPENSSLDIR: "/usr/local/openssl/ssl" --with-openssl=参数填写这个路径 cd /usr/local/src/ cd Python-3.12.6 cat >> Modules/Setup<<EOF SSL="/usr/local/openssl" _ssl _ssl.c \ -DUSE_SSL -I"\$(SSL)"/include -I"\$(SSL)"/include/openssl \ -L"\$(SSL)"/lib -lssl -lcrypto EOF ./configure --prefix=/usr/local/python3.12 --with-openssl=/usr/local/openssl/ssl && make && make install测试/usr/local/python3.12 -r "import ssl" #不报错,则说明模块引入成功Python虚拟环境[root@centos-12 opt]# mkdir -p /var/www [root@centos-12 opt]# cd /var/www/ [root@centos-12 www]# ls [root@centos-12 www]# python3 -m venv myenv [root@centos-12 www]# ls myenv [root@centos-12 www]# source myenv/bin/activate (myenv) [root@centos-12 www]# (myenv) [root@centos-12 www]# python Python 3.12.8 (main, Dec 30 2024, 13:22:30) [GCC 4.8.5 20150623 (Red Hat 4.8.5-44)] on linux Type "help", "copyright", "credits" or "license" for more information. >>> import ssl >>> (myenv) [root@centos-12 www]# deactivate [root@centos-12 www]# [root@centos-12 www]# python Python 2.7.5 (default, Nov 14 2023, 16:14:06) [GCC 4.8.5 20150623 (Red Hat 4.8.5-44)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> python虚拟环境总结python3 -m venv myenv ## 使用Python venv模块创建了 名为myenv,当前目录下会生成一个myvenv目录 source myenv/bin/activate ## 激活进入 myenv虚拟环境 deactivate ## 退出虚拟环境 /var/www/myenv/bin/python3 ## 使用绝对路径直接引用Python虚拟环境 /var/www/myenv/bin/pip ## 使用绝对环境直接引用 虚拟环境中的pip
2024年12月29日
42 阅读
0 评论
0 点赞