有关于网站建设的参考文献,上海本市企业查询,在哪找做网站的,网站新闻中心模版Python解决SSL不可用问题 解决方案#xff1a; 首先要明白python版本需要和openssl的版本需要相对匹配的#xff0c;在Python3.7之后的版本#xff0c;依赖的openssl#xff0c;必须要是1.1或者1.0.2之后的版本#xff0c;或者安装了2.6.4之后的libressl#xff0c;linux… Python解决SSL不可用问题 解决方案 首先要明白python版本需要和openssl的版本需要相对匹配的在Python3.7之后的版本依赖的openssl必须要是1.1或者1.0.2之后的版本或者安装了2.6.4之后的libressllinux自带的openssl版本过低。 1、查看liunx系统的openssl版本信息 openssl version如图所示小编的买的liunx服务器自带的openssl版本为1.1.1a 然而对于小编来说要安装python3.10的版本来说openssl的版本太低了因此需要更新openssl的版本才能满足要求 2、更新openssl版本 (1)安装相关依赖 yum install gcc libffi-devel zlib* openssl-devel perl* -y 2)官网下载openssl版本 wget https://www.openssl.org/source/openssl-3.0.1.tar.gz (3)解压openssl tar -zxvf openssl-3.0.1.tar.gz (4)编译openssl cd openssl- 1.1.1-pre8 . /config --prefix/usr/local/openssl no-zlib #不需要zlib make make install 3.备份原配置 [roots 2-hadoop-test ~]# mv /usr/bin/openssl /usr/bin/openssl.bak [roots 2-hadoop-test ~]# mv /usr/include/openssl/ /usr/include/openssl.bak 4.新版配置 #将安装好的openssl 的openssl命令软连到 /usr/bin/openssl [roots 2-hadoop-test ~]# ln -s /usr/local/openssl/include/openssl /usr/include/openssl #软链到升级后的libssl.so [roots 2-hadoop-test ~]# ln -s /usr/local/openssl/lib/libssl.so.1.1 /usr/local/lib64/libssl.so #将安装好的openssl命令软连到 /usr/bin/openssl ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl 5.修改系统配置 #写入openssl库文件的搜索路径 echo /usr/local/openssl/lib /etc/ld.so.conf #使修改后的/etc/ld.so.conf生效 ldconfig 如果报错openssl: error while loading shared libraries: libssl.so.3: cannot open shared object file: No such file or directory 编辑 /etc/ld.so.conf 文件并添加共享库文件所在的目录。例如在文件中添加一行 /path/to/openssl/lib(有可能lib64) 运行以下命令使更改生效 ldconfig 编辑 /etc/ld.so.conf 文件并添加共享库文件所在的目录。例如在文件中添加一行 /path/to/openssl/lib 运行以下命令使更改生效 sudo ldconfig openssl version 查看版本完成 重点执行这个 可以一步安装python和ssl使用 再升级python2---到python3 1.检查确认系统的相关信息 [rootzstest1 ~]# cat /etc/redhat-release CentOS release 6.5 (Final)[rootzstest1 ~]# uname -aLinux zstest1 2.6.32-431.el6.x86_64 #1 SMP Fri Nov 22 03:15:09 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux[rootzstest1 ~]# python -VPython 2.6.6我的进行软件升级系统是CentOS6.5-x86_64的内核2.6.32当前的python版本号为2.6.6 yum install make gcc gcc-c zlib* -y yum install gcc libffi-devel zlib* openssl-devel perl* -y 2.下载安装Python-3.6.2 1) 下载Python-3.6.2.tgz软件包 [rootzstest1 ~]# mkdir -p /server/tools/[rootzstest1 tools]# cd /server/tools/[rootzstest1 tools]# wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tgz2) 解压编译安装 [rootzstest1 tools]# tar -xf Python-3.6.2.tgz[rootzstest1 tools]# cd Python-3.6.2[rootzstest1 Python-3.6.2]# ./configure --prefix/usr/local/python37 (指定openssl路径)makemake install [rootzstest1 Python-3.6.2]# make[rootzstest1 Python-3.6.2]# make install# 如果编译出错需要检查makegcc等是否安装好 3) 安装完成需要更改默认的python版本 # 检查当前默认的python2默认自带的python位置在”/usr/bin/“目录下 [rootzstest1 Python-3.6.2]# ll /usr/bin/python*-rwxr-xr-x 2 root root 9032 11月 22 2013 /usr/bin/pythonlrwxrwxrwx. 1 root root 6 3月 20 2016 /usr/bin/python2 - python-rwxr-xr-x 2 root root 9032 11月 22 2013 /usr/bin/python2.6# 检查新安装的python3默认编译安装的python位置在”/usr/local/bin/“目录下 复制代码复制代码[rootzstest1 Python-3.6.2]# ll /usr/local/bin/python*lrwxrwxrwx 1 root root 9 10月 31 16:48 /usr/local/bin/python3 - python3.6-rwxr-xr-x 2 root root 9630001 10月 31 16:48 /usr/local/bin/python3.6lrwxrwxrwx 1 root root 17 10月 31 16:48 /usr/local/bin/python3.6-config - python3.6m-config-rwxr-xr-x 2 root root 9630001 10月 31 16:48 /usr/local/bin/python3.6m-rwxr-xr-x 1 root root 3066 10月 31 16:48 /usr/local/bin/python3.6m-configlrwxrwxrwx 1 root root 16 10月 31 16:48 /usr/local/bin/python3-config - python3.6-config复制代码# 修改默认的python # 删除旧的python的软连接创建新的python2和python3的软连接 [rootzstest1 Python-3.6.2]# cd /usr/bin/[rootzstest1 bin]# rm -f python2[rootzstest1 bin]# mv python python2.6.ori[rootzstest1 bin]# ln -s python2.6 python2[rootzstest1 bin]# ln -s /usr/local/bin/python3 /usr/bin/python4) 检查修改后的python版本 [rootzstest1 bin]# python -VPython 3.6.2[rootzstest1 bin]# python2 -VPython 2.6.6[rootzstest1 bin]# python3 -VPython 3.6.2 pip使用也需要别名 软连接 ln -s /home/lq/mytools/python3.6.9/bin/pip3 /usr/bin/pip3 安装python的路径 pip3 -V 可根据提示升级pip pip3 install --upgrade pip # 可以看到默认打开的python版本已经是3.6.2至此python的版本已经升级成功 3.后续的软件问题处理 # python的默认版本修改为3.x之后系统对于yum的调用会出问题所以需要修改下yum的相关配置 [rootzstest1 bin]# vim /usr/bin/yum# 需要检查确认以下配置 #!/usr/bin/python2# 这样修改后的yum依然可以调用python2.6.6的python在使用yum安装软件时就不会报错了 # 以上是在CentOS6.5系统上进行的python版本升级CentOS7.2上面的默认python版本为2.7.5可以使用相同的方法进行修改不过CentOS7.2的python链接稍有不同需要注意 [rootcentos72 ~]# ll /usr/bin/python*lrwxrwxrwx. 1 root root 7 10月 26 2016 /usr/bin/python - python2lrwxrwxrwx. 1 root root 9 10月 26 2016 /usr/bin/python2 - python2.7-rwxr-xr-x. 1 root root 7136 11月 20 2015 /usr/bin/python2.7# 另外就是CentOS7.2还有另外一个文件需要修改 [rootcentos72 ~]# vim /usr/libexec/urlgrabber-ext-down# 检查确认以下配置 #!/usr/bin/python2