From: Alexandre Vassalotti Date: Fri, 3 Apr 2009 07:16:55 +0000 (+0000) Subject: Make http.server main program nicer for interactive use. X-Git-Tag: v3.1a2~51 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=b5292a2e27dfb72a63f5ae51eb344405eb8a2f13;p=python Make http.server main program nicer for interactive use. Remove unreachable calls to test(). This restores the behavior of SimpleHTTPServer, where a user could type "python -m SimpleHTTPServer" and get a simple server for sharing files. Now, you can do the same thing with "python3 -m http.server". --- diff --git a/Lib/http/server.py b/Lib/http/server.py index 31153f4a39..5b5ef0a48d 100644 --- a/Lib/http/server.py +++ b/Lib/http/server.py @@ -1082,10 +1082,12 @@ def test(HandlerClass = BaseHTTPRequestHandler, sa = httpd.socket.getsockname() print("Serving HTTP on", sa[0], "port", sa[1], "...") - httpd.serve_forever() - + try: + httpd.serve_forever() + except KeyboardInterrupt: + print("\nKeyboard interrupt received, exiting.") + httpd.server_close() + sys.exit(0) if __name__ == '__main__': - test(HandlerClass=BaseHTTPRequestHandler) test(HandlerClass=SimpleHTTPRequestHandler) - test(HandlerClass=CGIHTTPRequestHandler)