[Patch #827559 from Chris Gonnerman] Make SimpleHTTPServer redirect when a directory URL is missing the trailing slash; this lets relative links work.

This commit is contained in:
Andrew M. Kuchling 2006-12-22 19:06:16 +00:00
parent ee0e6d16b3
commit 4281902545
1 changed files with 6 additions and 0 deletions

View File

@ -66,6 +66,12 @@ class SimpleHTTPRequestHandler(BaseHTTPServer.BaseHTTPRequestHandler):
path = self.translate_path(self.path) path = self.translate_path(self.path)
f = None f = None
if os.path.isdir(path): 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": for index in "index.html", "index.htm":
index = os.path.join(path, index) index = os.path.join(path, index)
if os.path.exists(index): if os.path.exists(index):