[Patch #827559 from Chris Gonnerman] Make SimpleHTTPServer redirect when a directory URL is missing the trailing slash; this lets relative links work.
diff --git a/Lib/SimpleHTTPServer.py b/Lib/SimpleHTTPServer.py
index fae551a..86c669e 100644
--- a/Lib/SimpleHTTPServer.py
+++ b/Lib/SimpleHTTPServer.py
@@ -66,6 +66,12 @@
         path = self.translate_path(self.path)
         f = None
         if os.path.isdir(path):
+            if not self.path.endswith('/'):
+                # redirect browser - doing basically what apache does
+                self.send_response(301)
+                self.send_header("Location", self.path + "/")
+                self.end_headers()
+                return None
             for index in "index.html", "index.htm":
                 index = os.path.join(path, index)
                 if os.path.exists(index):
diff --git a/Misc/NEWS b/Misc/NEWS
index dca49c1..897346b 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -125,6 +125,10 @@
 - Bug #737202: Make CGIHTTPServer work for scripts in subdirectories.
   Fix by Titus Brown.
 
+- Patch #827559: Make SimpleHTTPServer redirect when a directory URL
+  is missing the trailing slash, so that relative links work correctly.
+  Patch by Chris Gonnerman.
+
 - Patch #1608267: fix a race condition in os.makedirs() is the directory
   to be created is already there.