[Zope] Catch Unauthorized exception and internal redirect to login DTML doc

David K. Trudgett dkt@registriesltd.com.au
Mon, 3 Jun 2002 09:59:14 +1000


On Friday 2002-05-31 at 08:37:02 +0100, Chris Withers wrote:

> "David K. Trudgett" wrote:
> > 
> > This does a browser redirect, doesn't it? I'd prefer to do an internal
> > redirect, if possible.
> 
> What do you mean by an 'internal redirect'?

Oops. Does that mean Zope doesn't do it? Perhaps the terminology is
different in Zope. In mod_perl it's called an internal redirect.

A normal HTTP redirect tells the browser to go look somewhere else for
what it originally requested. An internal redirect results in URL X
being served instead of URL Y (the requested URL). In this particular
context, this is handy because I can display an authorisation page
(login form) whenever a protected URL is requested, but without (a)
suffering performance hit (from user's perspective) of having to go
through the whole process of requesting another URL; or (b) having the
actual URL of the login form displayed in the browser; or (c) having
an error page flash up on the user's browser, potentially causing
confusion.

David Trudgett