首页 > 解决方案 > Python网络服务器说“连接重置”

问题描述

今天早些时候,我使用套接字库制作了一个非常基本的 python 网络服务器。它应该能够返回基本的html页面,就是这样。在我通过浏览器向它发送请求之前,服务器似乎工作正常。由于我对服务器进行了编程,使其在开始侦听端口或接受连接时向终端发送进度消息,因此我可以判断它已建立连接,但每次尝试加载浏览器时都会显示“连接重置”消息. 查看日志,我发现每次加载页面时我的连接成功消息都会显示两次,这很奇怪。这就是浏览器一直显示“连接重置”的原因吗?我对socket和HTTP不太熟悉,请多多包涵。

这是服务器:

import socket

host = ''
port = 8080

sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)

sock.bind((host,port))
sock.listen(1)
print("Listening for connections on port" + ' ' + str(port))

while 1:
    sock_sock, sock_addr = sock.accept()
    print("Accepted connection on port" + ' '  + str(port))
    sock_file = sock_sock.send(open("main_app.py").read(), 0)

print("Closing socket...")
sock_file.close()
sock_sock.close()

标签: python

解决方案


推荐阅读