web2py错误:由对等方重置连接

时间:2012-06-22 17:50:41

标签: python web2py

我一直在谷歌搜索几天试图找到一个直接的答案,为什么会发生这种情况,但找不到任何有用的东西。我有一个web2py应用程序,它只读取数据库并向REST API发出一些请求。它是一个健康检查监视器,所以它每分钟都会刷新一次。在任何给定时间,大约有20个左右的用户。这是我在日志文件中非常一致地看到的错误:

ERROR:Rocket.Errors.Port8080:Traceback (most recent call last):
  File "/opt/apps/web2py/gluon/rocket.py", line 562, in listen
    sock = self.wrap_socket(sock)
  File "/opt/apps/web2py/gluon/rocket.py", line 506, in wrap_socket
    ssl_version = ssl.PROTOCOL_SSLv23)
  File "/usr/local/lib/python2.7/ssl.py", line 342, in wrap_socket
    ciphers=ciphers)
  File "/usr/local/lib/python2.7/ssl.py", line 121, in __init__
    self.do_handshake()
  File "/usr/local/lib/python2.7/ssl.py", line 281, in do_handshake
    self._sslobj.do_handshake()
error: [Errno 104] Connection reset by peer

基于一些谷歌搜索,最有希望的信息是有人试图通过防火墙连接,因此它正在杀死连接,但我不明白为什么它将实际应用程序关闭。该进程仍在运行,但没有人可以连接,我必须重新启动web2py。

我将非常感谢这里的任何意见。我太沮丧了。

谢谢!

1 个答案:

答案 0 :(得分:1)

Connection reset by peer错误的最常见来源是远程客户端决定他不想再与您联系,并取消交互(使用shutdown / RST数据包) 。如果用户在加载网站时导航到其他页面,则会发生这种情况。

在您的情况下,远程主机甚至在您读取或写入任何内容之前就放弃了连接。使用当前的web2py,这应该只输出您正在看到的警告,而不是终止任何内容。

如果您有当前的web2py,则无法连接的错误与这些错误消息无关。如果你有旧版本的web2py,你应该更新。