[Mailman-Developers] Problem with Proxying and Utils.GetRequestURI

Mathias Andre mandre at it.dcs.ch
Sun Nov 18 15:55:05 CET 2007


Dear all, 

In my company we're currently running Mailman 2.1.9.
The setup is as follow:

We have a dedicated Mailman server list.example.com 
For several reason we have been asked to make use of our main web server to
proxy the request to the Mailman server (this allow us to use one single
certificate SSL) so on our main web server www.example.com we have the
following Apache configuration:

ProxyPass        /lists    http://list.example.com/cgi-bin/mailman/
ProxyPassReverse /lists    http://list.example.com/cgi-bin/mailman/

So we can acess the Mailman web interfaces via for example:
http://www.example.com/lists/listinfo/mailman

This works just fine, we 'renamed' all the lists using fix_url and everything
went ok, all the links are fine.


Well, except for one: the ACTION= entry in all the login forms (admin,
admindb...)

After a bit of investigation I identified the source of the 'problem', in
Mailman/Cgi/Auth.py in def loginpage():

As it's a frontpage the actionurl comes from Utils.GetRequestURI(url), which
in turns uses the REQUEST_URI environment variable.
In our case this variable is set to the *local* Apache path, ie the path on
list.example.com instead of the path on www.example.com, so we have
/cgi-bin/mailman//admin/mailman
instead of:
/lists/admin/mailman

So the web browser then tries to send the form's data to
www.example.com/cgi-bin/mailman//admin/mailman which obviously doesn't exist.

We temporarily fixed our problem by forcing loginpage() to always return
actionurl = url whether or not frontpage is True or not.
This doesn't seem to have broken anything else but obviously I would like to
find a cleaner solution.

So I have a couple of questions: 
Are we doing something wrong in our setup? Why does Mailman GetRequestURI if
frontpage is True? 


I hope that someone will be able to enlighten us :)

Many thanks in advance for this, and for the great piece of software!

Mathias Andre



-- 
  *    Mathias Andre                   Phone : +49 (0)89 3200 6760
*E S*  European Southern Observatory   Fax   : +49 (0)89 3200 6380
  O    Karl Schwarzschildstr. 2        Office 213/6
  *    D-85748 Garching
       Germany
"For every problem, there is a solution that is simple, neat, and wrong."
H. L. Mencken



More information about the Mailman-Developers mailing list