Location problems
Igor Sysoev
is at rambler-co.ru
Fri Feb 29 14:31:19 MSK 2008
On Fri, Feb 29, 2008 at 11:13:48AM +0000, Igor Clark wrote:
> Hi Igor,
>
> Everything that doesn't exist as a file gets routed to either /
> frontend.php, or /admin.php if the URI starts with /admin. If so, it's
> IP-restricted in this case, basic_auth protected in other cases.
>
> So we want to be able to do:
>
> / -> /frontend.php -> fastcgi
>
> /speakers/show/all -> /frontend.php?control_path=/speakers/show/all ->
> fastcgi
>
> /admin -> /admin.php -> fastcgi, protected
>
> /admin/speakers/edit/32
> /admin.php?control_path=/admin/speakers/edit/ 32 -> fastcgi,
> protected
>
> I'm just wondering whether our approach of "rewrite first, then deal
> with locations" is just wrong, maybe we should deal with locations
> first and then rewrite if necessary.
location / {
error_page 404 = @fallback;
}
location @fallback {
fastcgi_pass ...
fastcgi_param SCRIPT_FILENAME /path/to/frontend.php;
fastcgi_param QUERY_STRING control_path=$uri;
...
}
location /admin {
allow 1.2.3.4;
deny all;
error_page 404 = @admin;
}
location @admin {
fastcgi_pass ...
fastcgi_param SCRIPT_FILENAME /path/to/admin.php;
fastcgi_param QUERY_STRING control_path=$uri;
...
}
--
Igor Sysoev
http://sysoev.ru/en/
More information about the nginx
mailing list