gpt4 book ai didi

python - centos 7.2 python 2.7.5 WSGIServer 无法传递 key 文件参数

转载 作者:太空宇宙 更新时间:2023-11-03 14:48:11 30 4
gpt4 key购买 nike

专家。

我正在使用 ssl 制作一个 python 服务器。所以,我正在使用 gevent.pywsgi.WSGIServer。但是当我尝试传递 key 文件时,它不会传递给 _ssl.c,它是 python 的 c 库。

我的代码在下面..

rack.append(WSGIServer(('', conf.ssl_port), application, backlog=2500,  
keyfile=conf.keyfile, certfile=conf.certfile))

当然,keyfile 有正确的值。但是当在 _ssl.c 的代码中达到这一点时

load_cert_chain_args

在该函数的 PyString_Check for keyfile argumnet 上出现段错误。 (您可以确认/Python-2.7.5/Module/_ssl.c + 2695 行)。

当我确认 load_cert_chain_args 的 key 文件 arg 时,我可以看到这个日志。

keyfile=keyfile@entry=(远程 0xd231d4 未知)

但是当我确认这段内存的值(value)时。

x/s 0xd231d4L:“正确的字符串在这里”

我不知道为什么会这样......虽然在内存中有关于 key 文件的正确值。

如果这是可分页的问题..也许我无法使用 gdb 看到 key 文件值。

但我不知道为什么 _ssl.c 的 load_cert_chain 会产生 Segmemtation错误(PyString_Check(keyfile))。

虽然我可以看到内存中的值,但我不知道为什么 gdb 在远程日志中仍然未知。

我在 Centos 7 上使用 Python 2.7.5 并使用 python-gevent 1.0-2.el7)。

谢谢。

最佳答案

终于找到答案了。

当我使用安装在 CentOS 7.2 中的 Python 2.7.5-34 时,

将纯字符串而不是 PyObject 传递给 _ssl.c python c 模块。

为了解决我的问题,下面的链接真的很有帮助。

https://github.com/gevent/gevent/issues/702

谢谢!

关于python - centos 7.2 python 2.7.5 WSGIServer 无法传递 key 文件参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36861051/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com