summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--pelican/__init__.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/pelican/__init__.py b/pelican/__init__.py
index a3298ff7..84ec9a49 100644
--- a/pelican/__init__.py
+++ b/pelican/__init__.py
@@ -476,6 +476,12 @@ def listen(server, port, output, excqueue=None):
excqueue.put(traceback.format_exception_only(type(e), e)[-1])
return
+ except KeyboardInterrupt:
+ stop_msg = "Keyboard interrupt received. Shutting down server."
+ logger.info(stop_msg)
+ print("\n{}".format(stop_msg))
+ httpd.socket.close()
+
def main(argv=None):
args = parse_arguments(argv)