diff options
-rwxr-xr-x | serve.py | 9 |
1 files changed, 8 insertions, 1 deletions
@@ -11,6 +11,13 @@ import sys PORT = 8000 if len(sys.argv) <= 1 else int(sys.argv[1]) HOST = "" if len(sys.argv) <= 2 else sys.argv[2] +class Server(socketserver.TCPServer): + def __init__(self, addr, handler): + self.allow_reuse_address = True + if ':' in addr[0]: + self.address_family = socket.AF_INET6 + super().__init__(addr, handler) + class Handler(SimpleHTTPRequestHandler): def send_response(self, code, message=None): # Grr, cannot use this in Python 2 as SimpleHTTPRequestHandler is not a @@ -19,7 +26,7 @@ class Handler(SimpleHTTPRequestHandler): SimpleHTTPRequestHandler.send_response(self, code, message) self.send_header('Cache-Control', 'no-cache') -httpd = socketserver.TCPServer((HOST, PORT), Handler) +httpd = Server((HOST, PORT), Handler) print("Serving at port %d" % PORT) httpd.serve_forever() |