У меня проблемы с блоком Geo на моем nginx. Я пытаюсь включить режим обслуживания на своих сайтах и сделать его видимым в зависимости от того, есть ли у вас уникальный IP-адрес. Мои настройки следующие.
/ etc / nginx / sites-enabled / mysite.com:
geo $notshowmaintenance {
default 0;
192.168.1.0/24 1;
}
server {
....
error_page 503 @maintenance;
location @maintenance {
rewrite ^(.*)$ /maintenance/maintenance.html break;
}
....
location / {
if (-f /var/www/maintenance/maintenance_on) {
set $active A;
}
if ($notshowmaintenance) { # I tried with = 1 and = yes too.
set $active B;
}
if ($active = B){
break;
}
if ($active = A){
return 503;
}
....
}
В результате режим обслуживания доступен для всех , Я использовал эту конфигурацию на нескольких серверах и никогда не было проблем.
Заранее большое спасибо!