Quick question about try_files
Maxim Dounin
mdounin at mdounin.ru
Sat Jan 8 04:17:27 MSK 2011
Hello!
On Fri, Jan 07, 2011 at 01:27:32PM -0800, Aaron Starr wrote:
> Maxim,
>
> Thanks for your quick reply!
>
> I should have included that in both cases, the default handler is this:
>
> location / {
> try_files $uri $uri/index.html @mongrel_app;
> }
>
> And, there is no /archives/ handler. So, here are the snippets that I think
> are relevant. Working:
>
> location ^~ /providers/ {
> error_page 404 = @archives;
> log_not_found off;
> }
> location @archives {
> rewrite "/providers/(.*)" /archives/providers/$1 last;
> }
> location / {
> try_files $uri $uri/index.html @mongrel_app;
> }
>
> Not working:
>
> location ^~ /providers/ {
> try_files $uri /archives$uri @mongrel_app;
> }
> location / {
> try_files $uri $uri/index.html @mongrel_app;
> }
This should work (and works here without problems, just tested in
both 0.9.3 and 0.7.67). Note though that the second form (with
try_files) won't work with directories.
> Also, I should mention that it in the not-working case, the behavior is that
> it will correctly find the file in /providers/... but if the file is moved
> to /archives/providers/..., it will no longer find it.
>
> I've put all the location directives here: http://pastie.org/1438414
Could you please provide debug log for working and non-working
cases? See http://wiki.nginx.org/Debugging for basic
instructions.
Maxim Dounin
More information about the nginx
mailing list