[mod_python] Help with mod_python, mod_proxy & cookies

Marc Boorshtein mboorshtein at gmail.com
Thu Jan 25 05:30:13 EST 2007


> Do you mean ProxyPassReverse?
>

Yes


> The example should have been equivalent to that. The values for proxyreq are:
>

No, it didn't change the 'Location' header on the 302 response

>   PROXYREQ_NONE = 0       # No proxy
>   PROXYREQ_PROXY = 1      # Standard proxy
>   PROXYREQ_REVERSE = 2    # Reverse proxy
>   PROXYREQ_RESPONSE = 3   # Origin response
>
> I believe that PROXYREQ_PROXY is equivalent to ProxyPass and PROXYREQ_REVERSE
> as used is equivalent to ProxyPassReverse.
>

This didn't seem to be the case.  It was easy to work around though.
I looked for a 302 response and then changed the location header in
the output filter:

if filter.req.status_line[0:3] == '302':
       redirto = filter.req.headers_out['Location']
       rediruri = redirto[redirto.find('/',8):]
       apache.log_error(rediruri)
       filter.req.headers_out['Location'] = 'http://localhost' + rediruri

Needs some better error checking but it works.

Thanks
Marc


More information about the Mod_python mailing list