From 8a937005d368cc268c843c65e61c86ae1f1a08a2 Mon Sep 17 00:00:00 2001 From: Sven Kocksch Date: Tue, 7 Mar 2017 18:32:39 +0100 Subject: [PATCH] reuse local bind address Don't need to wait 30 seconds after local address is reusable again. --- servefiles/servefiles.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/servefiles/servefiles.py b/servefiles/servefiles.py index 549ef3a..fcf008c 100644 --- a/servefiles/servefiles.py +++ b/servefiles/servefiles.py @@ -70,8 +70,14 @@ if directory and directory != '.': # doesn't need to move if it's already the c print('\nURLs:') print(file_list_payload + '\n') +class MyServer(TCPServer): + def server_bind(self): + import socket + self.socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) + self.socket.bind(self.server_address) + print('Opening HTTP server on port ' + str(hostPort)) -server = TCPServer(('', hostPort), SimpleHTTPRequestHandler) +server = MyServer(('', hostPort), SimpleHTTPRequestHandler) thread = threading.Thread(target=server.serve_forever) thread.start()