php and locations with regex (round 2)

Igor Sysoev is at rambler-co.ru
Wed Oct 24 14:23:27 MSD 2007


On Tue, Oct 23, 2007 at 03:56:12PM -0200, Alejandro Vartabedian wrote:

> Igor Sysoev escribi??:
> > On Tue, Oct 23, 2007 at 02:26:10PM -0200, Alejandro Vartabedian wrote:
> >
> >   
> >> ;-) i tried something like this before posting the last mail, but i
> >> think this mixture is out of context (somebody correct me please), it's
> >> a rewrite module directive, and fastcgi params doesn't fit in it (yet ;).
> >>
> >> i think i'm out of luck with the simplification/generalization of the
> >> config directives i pretend.
> >>
> >> thank you all, i'm learning a lot about nginx...
> >>     
> >
> > You may use:
> >
> >       location ~ \.php$ {
> >           fastcgi_pass   ...
> >           ...
> >       }
> >
> >       location ~ ^/(app1|app2)/ {
> >           root    ...
> >           ...
> >       }
> >   
> Igor, you'll not trust me, but i remember to have proven something like
> these, i think in the config test madness i missed something or didn't
> cleared the browser cache correctly and discarded those settings.
> it seems to work ok!
> > It's better do not use "if".
> >   
> what about conditioned rewrite rules application, the same advice?

if has many limits.

> > Try to route request via locations only.
> > If you want to pass non-existent files to FastCGI/proxy it's better to use:
> >
> >       location / {
> >           root   ...
> >           error_page 404  =  @fallback;
> >       }
> >
> >       location @fallback {
> >           fastcgi_pass   ...
> >           ...
> >       }
> >   
> those are very elegant and powerful options to remember for other things.
> question: is the return directive (from rewite module) applicable in
> this behavior to trigger @fallback?

Yes.


-- 
Igor Sysoev
http://sysoev.ru/en/





More information about the nginx mailing list