nested error_page
Igor Sysoev
igor at sysoev.ru
Tue Dec 14 10:12:38 MSK 2010
On Tue, Dec 14, 2010 at 03:07:08PM +0800, Mauro Stettler wrote:
> hi
>
> i have a situtation where i would need something similar to this:
>
> location / {
> error_page 404 = /fallback_all;
> // do a request to get content from memcache, if not found go to /fallback_all
> }
>
> location = /fallback_all {
> internal;
> error_page 404 = @404;
> // do a request to get content from fastcgi, if not found go to @404
recursive_error_pages on;
> }
>
> location @404 {
> internal;
> // real 404 page
> }
>
> but this doesn't work. if the fastcgi returns a 404 then nginx will
> just display its own error page and ignore the second error_page
> directive. i'm guessing that the reason is that at the first 404 error
> it already sets the ngx_http_request_t->err_status to something which
> makes it ignore the second 404.
>
> is there any way around this? i could probably make the fastcgi return
> some other code, but i'm also not sure if this will make it work then.
> is there any directive which could make the second error_page work?
> something to allow nested error_pages
--
Igor Sysoev
http://sysoev.ru/en/
More information about the nginx
mailing list