[Zope-dev] problems with LoginManager and proxies

Phillip J. Eby pje@telecommunity.com
Mon, 12 Feb 2001 11:41:02 -0500


At 09:29 AM 2/12/01 -0500, Tim McLaughlin wrote:
>thanks to the excellent tool (tcpwatch) I was able to pinpoint the issue I
>am having with LoginManager.  It seems that it is returning an HTTP/1.0 500
>Internal Server Error as the response to the proxy which then tells the
>browser that the page is a no go (despite the fact that the login page
>follows as the content).  So the browser displays the error message page we
>all know too well without the content:
>
>HTTP 500 - Internal server error 
>Internet Explorer
>
>This does not happen it seems when the page is viewed without a client proxy
>(tcpwatch or other).  Note: this request is actually double proxied - I have
>an Apache reverse proxy setup.  Is this problem an Apache issue, or a Zope
>issue?  Please help....
>

Neither, it's an IE stupidity or a proxy stupidity; it's nonsensical for a
browser or proxy to replace the server's messages with its own, removing
data.  But you can work around it by changing the status code.  Just have
the login form raise an error name corresponding to an HTTP status code.
(See the lib/python/ZPublisher/HTTPResponse.py file for a list of codes you
can raise.)  Beats me what status code you should use, though, although
raising "OK" might work...