有时使用以下堆栈跟踪发送数据时出现websocket错误。什么配置更改可以防止此错误?或者,我怎样才能优雅地处理这个问题?
Traceback (most recent call last): File "/usr/local/lib/python2.7/dist-packages/tornado-3.0.1-py2.7.egg/tornado/iostream.py", line 316, in wrapper callback(*args) File "/usr/local/lib/python2.7/dist-packages/tornado-3.0.1-py2.7.egg/tornado/stack_context.py", line 241, in wrapped callback(*args, **kwargs) File "/usr/local/lib/python2.7/dist-packages/tornado-3.0.1-py2.7.egg/tornado/websocket.py", line 643, in _on_masked_frame_data self._on_frame_data(self._apply_mask(self._frame_mask, data)) File "/usr/local/lib/python2.7/dist-packages/tornado-3.0.1-py2.7.egg/tornado/websocket.py", line 680, in _on_frame_data self._receive_frame() File "/usr/local/lib/python2.7/dist-packages/tornado-3.0.1-py2.7.egg/tornado/websocket.py", line 582, in _receive_frame self.stream.read_bytes(2, self._on_frame_start) File "/usr/local/lib/python2.7/dist-packages/tornado-3.0.1-py2.7.egg/tornado/iostream.py", line 162, in read_bytes self._try_inline_read() File "/usr/local/lib/python2.7/dist-packages/tornado-3.0.1-py2.7.egg/tornado/iostream.py", line 398, in _try_inline_read if self._read_to_buffer() == 0: File "/usr/local/lib/python2.7/dist-packages/tornado-3.0.1-py2.7.egg/tornado/iostream.py", line 414, in _read_to_buffer chunk = self.read_from_fd() File "/usr/local/lib/python2.7/dist-packages/tornado-3.0.1-py2.7.egg/tornado/iostream.py", line 856, in read_from_fd chunk = self.socket.read(self.read_chunk_size) File "/usr/lib/python2.7/ssl.py", line 160, in read return self._sslobj.read(len) SSLError: [Errno 1] _ssl.c:1363: error:1409442E:SSL routines:SSL3_READ_BYTES:tlsv1 alert protocol version
答案 0 :(得分:0)
该错误表明您的客户端正在使用TLS v1。 Nginx服务器不再接受。
快速解决方案是在服务器上启用协议。请参阅https://ma.ttias.be/enable-tls-1-3-nginx/以了解操作方法。
警告: TLS v1被视为不安全!