Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >[Centos7]linux运行django项目报错no module named _ssl

[Centos7]linux运行django项目报错no module named _ssl

作者头像
贰叁壹小窝
发布于 2020-07-22 02:11:27
发布于 2020-07-22 02:11:27
2.2K00
代码可运行
举报
文章被收录于专栏:贰叁壹运维贰叁壹运维
运行总次数:0
代码可运行

本文编写于 205 天前,最后修改于 205 天前,其中某些信息可能已经过时。

案例说明:在Django搭建的博客上进行邮件密码找回,当在输入框中输入邮件之后网页报错:no module named _ssl;此时进入到python环境,我的python环境是3.6版本,尝试import ssl,返回错误:ModuleNotFoundError: No module named ‘_ssl’;开始按照网上的一些处理方式,安装好了需要的软件包后,先编辑python软件包中的Setup.dist文件,去掉指定四行代码的注释再重新编译python,但是python3中依旧无法导入ssl模块,但是试了下python2环境下是可以成功导入,在Google上找了不少资料得以成功解决,步骤如下:

1.安装依赖库

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
yum install -y zlib zlib-dev openssl-devel sqlite-devel bzip2-devel libffi libffi-devel gcc gcc-c++

2.修改python安装目录中的Setup.dist

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
vi /file/Python-3.6.0/Modules/Setup.dist

3.将以下五行注释取消

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
_socket socketmodule.c
SSL=/usr/local/ssl
_ssl _ssl.c \
-DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \
-L$(SSL)/lib -lssl -lcrypto

4.设置环境变量LD_LIBRARY_PATH

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
echo "export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$HOME/openssl/lib" >> $HOME/.bash_profile
source $HOME/.bash_profile

5.重新编译

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
./configure --prefix=/usr/local/python3.6 --with-openssl=/usr/local/openssls
make && make install

6.查看效果

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@mail Python-3.6.0]# python
Python 3.6.0 (default, Sep 20 2019, 20:23:48) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-36)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import ssl
>>> exit()
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-12-29 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
svn 钩子开启
(1).重命名svn主目录中hooks的pre-commit.tmpl文件为pre-commit,并添加可执行权限
明哥的运维笔记
2019/01/30
1.4K0
SVN提交时强制用户写日志
在使用SVN进行项目管理的过程中,为了对各版本提交状况进行了解,我们需要在SVN提交过程中强制用户输入一定的日志。
用户7657330
2020/08/14
1.7K0
Linux下svn提交时必须添加注释的设置
如何在Linux系统下安装svn, 这里暂不介绍,请看本文下方的相关教程,在svn安装目录下有个hooks文件夹, 修改其中的pre-commit.tmpl文件;
知忆
2021/06/19
2.4K0
CentOS7安装配置SVN及SVN Hook实战
一、概述 1、何为svn? Apache Subversion(简称SVN,svn),一个开放源代码的版本控制系统;用来管理文档,程序代码等文档的版本;svn相对git来说有点古老,是一个中心控制的版
星哥玩云
2022/07/13
1.2K0
CentOS7安装配置SVN及SVN Hook实战
SVN Hooks的介绍及使用
Hooks 钩子,主要实现的功能就是在特定事件发生之前或者之后自动执行事先定义好的脚本代码来实现某些功能,类似于JS中的监听事件、MySQL中的触发器、Django中的signals信号等
37丫37
2019/01/03
4K0
UTF-8编码中BOM的检测与删除
所谓BOM,全称是Byte Order Mark,它是一个Unicode字符,通常出现在文本的开头,用来标识字节序(Big/Little Endian),除此以外还可以标识编码(UTF-8/16/32),如果出现在文本中间,则解释为zero width no-break space。 注:Unicode相关知识的详细介绍请参考UTF-8, UTF-16, UTF-32 & BOM。 对于UTF-8/16/32而言,它们名字中的8/16/32指的是编码单位是多少位的,也就是说,它们的编码单位分别是8/16/32位,换算成字节就是1/2/4字节,如果是多字节,就要牵扯到字节序,UTF-8以单字节为编码单位,所以不存在字节序。 UTF-8主要的优点是可以兼容ASCII,但如果使用BOM的话,这个好处就荡然无存了,除此以外,BOM的存在还可能引发一些问题,比如下面错误便都有可能是BOM导致的:
LA0WAN9
2021/12/14
2.7K0
Subversion钩子
所谓钩子实际上是一种事件机制,当系统执行到某个特殊事件时,会触发我们预定义的动作,这样的特殊事件在Subversion里有很多,默认有如下模板可供选择:
LA0WAN9
2021/12/14
7670
SVN之深入了解
其实我们所说的SVN就是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的(代码仓库)。
良月柒
2019/03/19
1K0
一篇搞懂Git 和 SVN 的区别【原理篇】
Git和SVN都是版本管理系统,但是他们 命令区别后面会简单进行一个对比,我们先从原理的角度分析
火狼1
2022/03/22
3.4K0
一篇搞懂Git 和 SVN 的区别【原理篇】
Git 是如何检测本地 commit 中包含敏感信息的?背后的技术原理解析
Git 是一个分布式版本控制系统,被广泛用于管理软件项目的源代码。它在团队协作和历史记录管理中扮演了重要角色。然而,由于代码仓库的公开性,敏感信息(如 API 密钥、私有凭证等)的泄露风险也随之增加。为了帮助开发者避免这种问题,Git 引入了多种防护机制。
编程小妖女
2025/01/17
1090
Git 是如何检测本地 commit 中包含敏感信息的?背后的技术原理解析
Shell编程学习笔记
常用命令介绍 历史命令(History) history:查看历史命令,默认1k条 !!:上一条命令 !$:获取上一条命令的最后一个参数 !+数字:运行第几条历史命令 !+字符串:从历史命令最近一条开始匹配,以该字符串开头的命令 别名(alias) 列出所有的别名设置:alias 设置别名:alias a=’b’ 取消别名设置:unalias a 重定向 重定向符号 重定向,覆盖原来的内容:> 重定向,追加到原来的内容:>> 反向重定向,目标是一个程序:< 错误重定向,覆盖原来的内容:2> 错误重定向,追
skyyws
2022/05/20
5500
Android代码规范利器: Checkstyle
Step1: 在 gradle文件夹下创建一个 checkstyle.gradle文件:
用户1205080
2018/12/26
1.1K0
Centos7安装svn服务
最新更新:2020-12-09 22:38:32 2020-11-18 16:54:08+0800 chenxizhan new
全栈程序员站长
2022/11/02
8960
【Git】Git 完全指南:从入门到精通
Git 是现代软件开发中最重要的版本控制工具之一,它帮助开发者高效地管理项目,支持分布式协作和版本控制。无论是个人项目还是团队开发,Git 都能提供强大的功能来跟踪、管理代码变更,并保障项目的稳定性与可持续发展。本篇文章从基础命令讲起,逐步深入,帮助你全面了解并掌握 Git,最终达到精通。
LuckiBit
2024/12/11
4.8K0
【Git】Git 完全指南:从入门到精通
SVN工具分析
寄语:虽然现在很多项目都使用GIT进行版本管理,但是SVN还有使用的,这篇文档压箱底了好久,思虑再三,还是发出来吧,说不定能帮助到别人。
Sky_Mao
2020/07/23
2.6K0
SVN工具分析
C/C++ 项目必读:代码格式化和静态分析检查的一站式工作流 Cpp Linter
目前 C/C++ 语言的代码格式化和检查工具使用的最为广泛的是 LLVM[1] 项目中的 Clang-Format[2] 和 Clang-Tidy[3]。
Peter Shen
2022/11/30
1.6K0
C/C++ 项目必读:代码格式化和静态分析检查的一站式工作流 Cpp Linter
Linux命令之Grep——文本搜索
Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。
浩Coding
2019/07/03
2.9K0
Linux命令之Grep——文本搜索
学会这 11 条,你离 Git 大神就不远了!
支持使用 merge 的开发者,他们认为仓库的提交历史就是记录实际发生过什么,它是针对于历史的一个文档,本身其实是有价值的,我们不应该随意修改。我们改变历史的话,就相当于使用“谎言”来掩盖实际发生过的事情,而这些痕迹是应该被保留的。可能,这样并不是很好。
民工哥
2021/04/21
3670
SVN服务器备份_svn服务器迁移
SVN数据备份、还原、适用情况、部分异常处理等介绍。备份方式主要有hotcopy、dump以及svnsync三种方式。三类备份方式各有优劣,根据自身情况及需求选择即可。
全栈程序员站长
2022/11/11
6.7K0
SVN服务器备份_svn服务器迁移
深入研究SVN代码检查的关键工具:svnchecker vs. SonarQube
代码检查的包放在了里面:https://pan.baidu.com/s/1CD7IXZ_E-RNTsXEl6L7SRw?pwd=8mz8
小尘要自信
2023/11/13
8480
深入研究SVN代码检查的关键工具:svnchecker vs. SonarQube
相关推荐
svn 钩子开启
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验