Rewrite URI and pass request to the upstream server

mike mike503 at
Tue Mar 17 20:19:58 MSK 2009

On Tue, Mar 17, 2009 at 10:09 AM, Ruben. D. <ruben.grunge84 at> wrote:
> Hi friends, I need rewrite and old URI and pass the request to the upstream
> server, here is my current config file:
> If for example I have I need redirect to
> and let the upstream process the new
> request, with my current config I've obtained the rewrite of the URI but
> nginx return me a 404 error, therefore it is not transfering the request to
> the upstream server because the 404 error page are different between nginx
> and my application.

This is a wild shot but you might try

- proxy_pass http://mongrel;
+ proxy_pass http://mongrel/;

I've never used named upstream locations but the ending slash does
have a different effect when passing HTTP to a backend. I believe it
maintains the /uri/ request as is, instead of winding up being
/uri/uri duplicated (I think is the easiest way to explain it?)

Also if you only have one mongrels server you could probably just do


If you don't plan on adding anymore in the future...

More information about the nginx mailing list