summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrew M. Kuchling <amk@amk.ca>2006-12-22 19:06:16 (GMT)
committerAndrew M. Kuchling <amk@amk.ca>2006-12-22 19:06:16 (GMT)
commit428190254510d3bc6eabf290fb138980784c38bb (patch)
tree51ebc513b6c2eeed0fa11a1ab5ef770d04f049b7
parentee0e6d16b371a66e1d9ab8103fb51117db37cdbc (diff)
downloadcpython-428190254510d3bc6eabf290fb138980784c38bb.zip
cpython-428190254510d3bc6eabf290fb138980784c38bb.tar.gz
cpython-428190254510d3bc6eabf290fb138980784c38bb.tar.bz2
[Patch #827559 from Chris Gonnerman] Make SimpleHTTPServer redirect when a directory URL is missing the trailing slash; this lets relative links work.
-rw-r--r--Lib/SimpleHTTPServer.py6
1 files changed, 6 insertions, 0 deletions
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 @@ class SimpleHTTPRequestHandler(BaseHTTPServer.BaseHTTPRequestHandler):
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):