SSL 错误;涉及到nginx、tornado、websocket
Posted
技术标签:
【中文标题】SSL 错误;涉及到nginx、tornado、websocket【英文标题】:SSL error; involves nginx, tornado, websocket 【发布时间】:2013-05-28 00:33:34 【问题描述】:有时使用以下堆栈跟踪发送数据时出现 websocket 错误。哪些配置更改可以防止此错误?或者,我该如何优雅地处理这个问题?
回溯(最近一次通话最后): 包装器中的文件“/usr/local/lib/python2.7/dist-packages/tornado-3.0.1-py2.7.egg/tornado/iostream.py”,第 316 行 回调(*args) 文件“/usr/local/lib/python2.7/dist-packages/tornado-3.0.1-py2.7.egg/tornado/stack_context.py”,第 241 行,已包装 回调(*args,**kwargs) _on_masked_frame_data 中的文件“/usr/local/lib/python2.7/dist-packages/tornado-3.0.1-py2.7.egg/tornado/websocket.py”,第 643 行 self._on_frame_data(self._apply_mask(self._frame_mask,数据)) _on_frame_data 中的文件“/usr/local/lib/python2.7/dist-packages/tornado-3.0.1-py2.7.egg/tornado/websocket.py”,第 680 行 self._receive_frame() _receive_frame 中的文件“/usr/local/lib/python2.7/dist-packages/tornado-3.0.1-py2.7.egg/tornado/websocket.py”,第 582 行 self.stream.read_bytes(2, self._on_frame_start) 文件“/usr/local/lib/python2.7/dist-packages/tornado-3.0.1-py2.7.egg/tornado/iostream.py”,第 162 行,在 read_bytes self._try_inline_read() _try_inline_read 中的文件“/usr/local/lib/python2.7/dist-packages/tornado-3.0.1-py2.7.egg/tornado/iostream.py”,第 398 行 如果 self._read_to_buffer() == 0: _read_to_buffer 中的文件“/usr/local/lib/python2.7/dist-packages/tornado-3.0.1-py2.7.egg/tornado/iostream.py”,第 414 行 块 = self.read_from_fd() 文件“/usr/local/lib/python2.7/dist-packages/tornado-3.0.1-py2.7.egg/tornado/iostream.py”,第 856 行,在 read_from_fd 块 = self.socket.read(self.read_chunk_size) 文件“/usr/lib/python2.7/ssl.py”,第 160 行,已读取 返回 self._sslobj.read(len) SSLError:[Errno 1] _ssl.c:1363:错误:1409442E:SSL 例程:SSL3_READ_BYTES:tlsv1 警报协议版本【问题讨论】:
【参考方案1】:该错误表明您的客户端正在使用 TLS v1。 nginx 服务器不再接受它。
快速修复是在服务器上启用协议。请参阅https://ma.ttias.be/enable-tls-1-3-nginx/ 了解如何操作。
警告:TLS v1 被认为是不安全的!
【讨论】:
以上是关于SSL 错误;涉及到nginx、tornado、websocket的主要内容,如果未能解决你的问题,请参考以下文章