]> git.tokkee.org Git - roundup.git/commitdiff

Code

fix (again?) trailing / redirect (sf bug 692910)
authorrichard <richard@57a73879-2fb5-44c3-a270-3262357dd7e2>
Wed, 26 Feb 2003 05:05:56 +0000 (05:05 +0000)
committerrichard <richard@57a73879-2fb5-44c3-a270-3262357dd7e2>
Wed, 26 Feb 2003 05:05:56 +0000 (05:05 +0000)
git-svn-id: http://svn.roundup-tracker.org/svnroot/roundup/trunk@1550 57a73879-2fb5-44c3-a270-3262357dd7e2

CHANGES.txt
roundup/scripts/roundup_server.py

index b37db6266e7ce32410b887ab35f34710bf46a8eb..688f2d992433b8adba3f46ee982b8cd9b9195b86 100644 (file)
@@ -65,6 +65,7 @@ are given with the most recent entry first.
   file serving
 - added Node.get() method
 - open static files using binary mode (sf bug 693208)
+- fixed deja-vu bug 692910
 
 
 2003-??-?? 0.5.6
index 8c850488522c5ebf862bb7c373f9735d1fc45ed8..23cd8e931580ed4f5e6fb655e7cfaf636d963d5a 100644 (file)
@@ -16,7 +16,7 @@
 # 
 """ HTTP Server that serves roundup.
 
-$Id: roundup_server.py,v 1.19 2003-02-26 04:51:41 richard Exp $
+$Id: roundup_server.py,v 1.20 2003-02-26 05:05:56 richard Exp $
 """
 
 # python version check
@@ -123,11 +123,25 @@ class RoundupRequestHandler(BaseHTTPServer.BaseHTTPRequestHandler):
         else:
             query = ''
 
-        # figure the tracker
+        # no tracker - spit out the index
         if rest == '/':
             return self.index()
+
+        # figure the tracker
         l_path = rest.split('/')
         tracker_name = urllib.unquote(l_path[1])
+
+        # handle missing trailing '/'
+        if len(l_path) == 2:
+            self.send_response(301)
+            # redirect - XXX https??
+            protocol = 'http'
+            url = '%s://%s%s/'%(protocol, self.headers['host'], self.path)
+            self.send_header('Location', url)
+            self.end_headers()
+            self.wfile.write('Moved Permanently')
+            return
+
         if self.TRACKER_HOMES.has_key(tracker_name):
             tracker_home = self.TRACKER_HOMES[tracker_name]
             tracker = roundup.instance.open(tracker_home)