[Zope-Checkins] SVN: Zope/branches/Zope-2_8-branch/ - Collector #2037: fixed broken ACTUAL_URL for '/'

Andreas Jung andreas at andreas-jung.com
Fri Mar 24 07:49:32 EST 2006


Log message for revision 66148:
        - Collector #2037: fixed broken ACTUAL_URL for '/'
  

Changed:
  U   Zope/branches/Zope-2_8-branch/doc/CHANGES.txt
  U   Zope/branches/Zope-2_8-branch/lib/python/Products/SiteAccess/VirtualHostMonster.py
  U   Zope/branches/Zope-2_8-branch/lib/python/Products/SiteAccess/tests/testVirtualHostMonster.py

-=-
Modified: Zope/branches/Zope-2_8-branch/doc/CHANGES.txt
===================================================================
--- Zope/branches/Zope-2_8-branch/doc/CHANGES.txt	2006-03-24 11:46:18 UTC (rev 66147)
+++ Zope/branches/Zope-2_8-branch/doc/CHANGES.txt	2006-03-24 12:49:32 UTC (rev 66148)
@@ -18,6 +18,8 @@
 
     Bugs fixed
 
+      - Collector #2037: fixed broken ACTUAL_URL for '/'
+
       - Collector #2039: 'ZPublisher.HTTPRequest.HTTPRequest._authUserPW'
         choked on passwords which contained colons.
 

Modified: Zope/branches/Zope-2_8-branch/lib/python/Products/SiteAccess/VirtualHostMonster.py
===================================================================
--- Zope/branches/Zope-2_8-branch/lib/python/Products/SiteAccess/VirtualHostMonster.py	2006-03-24 11:46:18 UTC (rev 66147)
+++ Zope/branches/Zope-2_8-branch/lib/python/Products/SiteAccess/VirtualHostMonster.py	2006-03-24 12:49:32 UTC (rev 66148)
@@ -193,7 +193,7 @@
                     request['VIRTUAL_URL'] = '/'.join(vup)
 
                     # new ACTUAL_URL
-                    add = request['ACTUAL_URL'].endswith('/') and '/' or ''
+                    add = (path and request['ACTUAL_URL'].endswith('/')) and '/' or ''
                     request['ACTUAL_URL'] = request['VIRTUAL_URL']+add
 
                 return

Modified: Zope/branches/Zope-2_8-branch/lib/python/Products/SiteAccess/tests/testVirtualHostMonster.py
===================================================================
--- Zope/branches/Zope-2_8-branch/lib/python/Products/SiteAccess/tests/testVirtualHostMonster.py	2006-03-24 11:46:18 UTC (rev 66147)
+++ Zope/branches/Zope-2_8-branch/lib/python/Products/SiteAccess/tests/testVirtualHostMonster.py	2006-03-24 12:49:32 UTC (rev 66148)
@@ -57,6 +57,17 @@
         m = self.app.folder.doc.getPhysicalPath
         self.assertEqual(m(), ('', 'folder', 'doc'))
 
+    def test_actual_url(self):
+        self.app.folder.manage_addDTMLMethod('index_html', '')
+        ob = self.traverse('/VirtualHostBase/http/www.mysite.com:80/folder/VirtualHostRoot/doc/')
+        self.assertEqual(self.app.REQUEST['ACTUAL_URL'], 'http://www.mysite.com/doc/')
+        ob = self.traverse('/VirtualHostBase/http/www.mysite.com:80/folder/VirtualHostRoot/doc')
+        self.assertEqual(self.app.REQUEST['ACTUAL_URL'], 'http://www.mysite.com/doc')
+        ob = self.traverse('/VirtualHostBase/http/www.mysite.com:80/folder/VirtualHostRoot/')
+        self.assertEqual(self.app.REQUEST['ACTUAL_URL'], 'http://www.mysite.com/')
+        ob = self.traverse('/VirtualHostBase/http/www.mysite.com:80/folder/VirtualHostRoot')
+        self.assertEqual(self.app.REQUEST['ACTUAL_URL'], 'http://www.mysite.com/') 
+
 def gen_cases():
     for vbase, ubase in (
         ('', 'http://foo'),



More information about the Zope-Checkins mailing list