Я пытаюсь сделать сайт доступным только из локальной сети, и люди из внешней сети получат статическую страницу с другим сообщением.
Это то, что я пытаюсь сделать, но, похоже, это не работает. Где я ошибся?
if ($remote_addr != 192.168.1.0/24) {
rewrite ^/* /covid19 last;
}
В $remote_addr
один IP-адрес (например, 192.168.1.123
), поэтому он не будет напрямую сравниваться со строкой 192.168.1.0/24
.
Если вы сравниваете IP-адрес с /24
блок, вы можете использовать регулярное выражение, которое проверяет только первые три числа.
Например:
if ($remote_addr !~ "^192\.168\.1\.") { ... }
Видеть этот документ для деталей, и это предупреждение по использованию if
.