Я пытаюсь сделать сайт доступным только изнутри локальной сети, и люди из внешней сети получат статическую страницу с другим сообщением.
Это это то, что я пытаюсь сделать, но, похоже, это не работает. В чем я ошибся?
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
.