Commit 12f7e5c0 authored by Andreas Jung's avatar Andreas Jung

- Collector #2037: fixed broken ACTUAL_URL for '/'

parent df62dab6
......@@ -18,6 +18,8 @@ Zope Changes
Bugs fixed
- Collector #2037: fixed broken ACTUAL_URL for '/'
- Collector #2039: 'ZPublisher.HTTPRequest.HTTPRequest._authUserPW'
choked on passwords which contained colons.
......
......@@ -193,7 +193,7 @@ class VirtualHostMonster(Persistent, Item, Implicit):
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
......
......@@ -57,6 +57,17 @@ class VHMRegressions(unittest.TestCase):
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'),
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment