Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/326.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.4缺少_ssl.pyd_Python_Ssl_Python 3.4_Ubuntu 10.04_Tls1.2 - Fatal编程技术网

Python 3.4缺少_ssl.pyd

Python 3.4缺少_ssl.pyd,python,ssl,python-3.4,ubuntu-10.04,tls1.2,Python,Ssl,Python 3.4,Ubuntu 10.04,Tls1.2,环境: Ubuntu 10.04.4 LTS Python 3.4.3 我有一台运行正常的Python3.4 HTTPS服务器,在Windows上运行得非常好。我需要把它转移到现有的Ubuntu 10.04.4 LTS服务器上。我在上面构建了python 3.4,没有任何问题,但当我运行web服务器时,它会出现错误: Traceback (most recent call last): File "./server.py", line 3, in <module> fro

环境: Ubuntu 10.04.4 LTS Python 3.4.3

我有一台运行正常的Python3.4 HTTPS服务器,在Windows上运行得非常好。我需要把它转移到现有的Ubuntu 10.04.4 LTS服务器上。我在上面构建了python 3.4,没有任何问题,但当我运行web服务器时,它会出现错误:

Traceback (most recent call last):
  File "./server.py", line 3, in <module>
    from app import create_app
  File "/opt/license-server/app/__init__.py", line 10, in <module>
    from config import config
  File "/opt/license-server/config.py", line 9, in <module>
    class Config:
  File "/opt/license-server/config.py", line 25, in Config
    LDAP_TLS_VERSION = ssl.PROTOCOL_TLSv1_2
AttributeError: 'module' object has no attribute 'PROTOCOL_TLSv1_2'
回溯(最近一次呼叫最后一次):
文件“/server.py”,第3行,在
从应用程序导入创建应用程序
文件“/opt/license server/app/_init__uuuuu.py”,第10行,在
从配置导入配置
文件“/opt/license server/config.py”,第9行,在
类配置:
文件“/opt/license server/config.py”,第25行,在配置文件中
LDAP\u TLS\u VERSION=ssl.PROTOCOL\u TLSv1\u 2
AttributeError:“模块”对象没有属性“协议\u TLSv1\u 2”
我使用pyCharm在Windows上做了一些深入研究,以了解发生了什么,似乎在_ssl.py中定义了协议_TLSv1_2,我相信它来自_ssl.pyd。Ubuntu python安装中既不存在_ssl.py也不存在_ssl.pyd,这让我相信我在编译时缺少了一些选项或东西,但我在python网站上找不到关于缺少什么或如何获得TLS-1.2东西的任何参考


有人能给我指出正确的方向吗?

当您从源代码构建Python 3.4时,在构建结束时,您会收到一份报告,说明哪些模块没有构建。我打赌ssl模块不是构建的,因为您的Ubuntu安装没有安装ssl包。尝试:

sudo apt-get install libssl-dev openssl

然后尝试重建Python3.4,看看是否构建了SSL模块。

谢谢您的建议。libssl-dev和openssl已经安装并且是最新的。为了确保删除了build文件夹,运行了./configure,然后对目标进行了make-to-force重建,我得到了以下输出:Python构建成功完成!未找到构建这些可选模块所需的位:_lzma要找到所需的位,请在detect_modules()中的setup.py中查找模块名称。它没有提到OpenSSL,遗憾的是它仍然不起作用。我在运行服务器时遇到了相同的错误。看起来像_ssl.cpython-34m。因此,根据构建日志,它可能类似于windows pyd,但它似乎不包含我需要的内容。看起来我应该搬到一个windows服务器上,把它处理完。