gpt4 book ai didi

SSL EOF 发生违反协议(protocol)与 python httplib

转载 作者:太空宇宙 更新时间:2023-11-03 13:08:19 24 4
gpt4 key购买 nike

当前关于这个主题的问题并没有解决我的问题,谷歌也没有。

相关服务器代码:

class ReuseHTTPServer(BaseHTTPServer.HTTPServer):
def __init__(self, address, handler, queue=None):
BaseHTTPServer.HTTPServer.__init__(self, address, handler)

self.address = address
ssl_socket = ssl.wrap_socket(socket.socket(self.address_family, self.socket_type),
keyfile = KEY_PATH,
certfile = CERTIFICATE_PATH,
server_side = True,
cert_reqs = ssl.CERT_REQUIRED,
ssl_version = ssl.PROTOCOL_TLSv1,
ca_certs = CA_PATH)
s = self.socket.getsockname()

print "serving:", s[0], "on port:", s[1]

self.socket = ssl_socket

self.server_bind()
self.server_activate()

客户端代码:

conn = https.HTTPSConnection(HOST, port=PORT, key_file=KEY_PATH, cert_file=CERT_PATH)

conn.putrequest("GET", '/cgi-bin/retrieveRunningInstances')

conn.endheaders()

response = conn.getresponse()

尝试与客户端连接时出现 SSLError errno 8; EOF 发生在违反协议(protocol)的情况下。我已经使用 openssl 验证了证书。我正在拔头发。任何帮助将不胜感激。

编辑:

错误发生在conn.getresponse()的握手过程中。

最佳答案

我想我明白了。我有同样的问题:

SSLError errno 8; EOF occurred in violation of protocol

原来我缺少一个 cert_file。我已经指定了一个如下,但没有。

server = HTTPServer( ('',5005), HttpHandler )
server.socket = ssl.wrap_socket( server.socket, certfile='kencert.pem', server_side=True )

当我添加 .pem 文件时,它起作用了!

希望这对您有所帮助!

关于SSL EOF 发生违反协议(protocol)与 python httplib,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13866721/

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