Rewriting
wishmaster
artemrts at ukr.net
Thu May 23 20:11:49 UTC 2013
Hi,
I use opencart with nginx+php-fpm. Sometimes it is necessary to redirect all clients, except admin (190.212.201.0/24), to "Service unavailable" page which is simple index.html file with logo, background image and some text, located in /unav directory.
Below some of nginx.conf
location / {
if ($remote_addr !~ '190\.212\.201\.[0-9]{0,3}') {
rewrite ^/(.*)$ /unav/$1 break;
return 403;
}
try_files $uri $uri/ @opencart;
}
location ^~ /unav {
}
location @opencart {
rewrite ^/(.+)$ /index.php?_route_=$1 last;
}
[...skipped...]
location ~ \.php$ {
try_files $uri =404;
fastcgi_read_timeout 60s;
fastcgi_send_timeout 60s;
include myphp-fpm.conf;
}
Problem is in rewriting.
This rule
rewrite ^/(.*)$ /unav/$1 break;
rewrite ONLY http://mysite.com/ request but in case http://mysite.com/index.php rewrite is none and request processed by location ~ \.php$ rule. Why??
Thanks!
More information about the nginx
mailing list