Not sure if it's passing to the proxy properly
Maxim Dounin
mdounin at mdounin.ru
Fri Feb 5 12:56:38 MSK 2010
Hello!
On Fri, Feb 05, 2010 at 12:35:45PM +0300, Igor Sysoev wrote:
> On Fri, Feb 05, 2010 at 12:30:12PM +0300, Maxim Dounin wrote:
>
> > Hello!
> >
> > On Fri, Feb 05, 2010 at 02:43:58AM -0500, James Matthews wrote:
> >
> > > Hi,
> > >
> > > I am passing my requests like this
> > > if ( -f $request_filename){
> > > expires 30d;
> > > break;
> > > }
> > > proxy_pass http://127.0.0.1:20000;
> > >
> > > However Apache is still serving everything (images included). How can I get
> > > it to move only through nginx (for images and other files).
> >
> > Try this:
> >
> > location / {
> > try_files $uri @fallback;
> > expires 30d;
> > }
> >
> > location @fallback {
> > proxy_pass http://127.0.0.1:20000;
> > }
>
> And do not forget about "root". Probably this was a cause why
>
> if (-f $request_filename) {
>
> did not work. However, anyway you should use try_files instead of "if".
In the original config proxy_pass is configured at location level,
and "if" won't "de-configure" it (r->content_handler will be set at
location level, and will be used inside implicit location created
by "if").
There is nothing wrong in original config, it works as expected.
It just doesn't prevent proxy_pass from executing.
Maxim Dounin
More information about the nginx
mailing list