Two main questions:
(1) Does anybody *have* good documentation on VIRTUAL_URL and how it
interacts with CookieCrumbler and VirtualHostMonster?
(2) Does anyone know how to debug VirtualHostMonster or other Python
libraries while running a Zope instance (it lives in Python not in
Zope, so I don't know if I change the code there if those changes will
actually get executed)?
For people who care to read more about what I think is going on:
> Well, where is VIRTUAL_URL documented? Why doesn't Plohn do something
> sane if it's not there?
It's not Plone's issue from what I can tell. CookieCrumbler, which
lives in CMF, does do something sane if VIRTUAL_URL is not there -- it
tries to create a substitute URL.
VIRTUAL_URL is set by the VirtualHostMonster. Does anyone know how to
debug it? Because it is in the python directories used to build Zope,
not in a Zope product which I know how to debug. (Is there a way to
restart python to register changes in VirtualHostMonster.py)?
Here is what I can tell of what is going on:
(1) VIRTUAL_URL is supposed to return the actual URL when there is a
Virtual Hosting Monster, for instance http://subdomain.mydomain.org
instead of http://ip:port/path/to/subdomain/object or
(2) There's an Apache rewrite rule set to transform URL requests like
http://ip:port/VirtualHostBase/http/subdomain.mydomain.org before they
get sent into Zope.
(3) When VirtualHostMonster receives a request like
http://ip:port/VirtualHostBase/http/subdomain.mydomain.org, it is
supposed to return the currect object at
http://ip:port/path/to/subdomain/object and set a variable VIRTUAL_URL
http://subdomain.mydomain.org in the REQUEST variable.
(4) When navigating to an authenticated-only page, CMFCore's
CookieCrumbler sets a "came_from" variable to remember where to go. To
set the "came_from" variable, it first looks for VIRTUAL_URL. If it
doesn't find it, it uses another method to set "came_from" -- but this
returns an URL, and one that does not work.
(5) During login in Plone to a authenticated-only page, it uses
CMFCore's CookieCrumbler came_from variable.
> > I'm wondering if CookieCrumbler is supposed
> > to set VIRTUAL_URL given that there's a VHM installed and doesn't?
> It's probably some code in the publisher or vhm. Maybe it's something
> that didn't get merged from a branch or the trunk.
> Your best bet is to come up with minimal (ie: no plone, no cookie
> crumbler, etc) way to reproduce this and file a bug report in the collector.
> Oh, and grab yourself a copy of grep and see where this should be
> defined ;-)
> Simplistix - Content Management, Zope & Python Consulting
> - http://www.simplistix.co.uk
Zope maillist - Zope@zope.org
** No cross posts or HTML encoding! **
(Related lists -