ローカルネットワーク内からのみサイトにアクセスできるようにしようとしていますが、外部ネットワークのユーザーには、他のメッセージを示す静的ページが表示されます。
これは私がやろうとしていることですが、うまくいかないようです。どこが間違っているのですか?
if ($remote_addr != 192.168.1.0/24) { rewrite ^/* /covid19 last; }
$remote_addrは単一のIPアドレス(例:192.168.1.123)であるため、文字列192.168.1.0/24と直接比較されません。
$remote_addr
192.168.1.123
192.168.1.0/24
IPアドレスを/24ブロックと比較する場合は、最初の3つの数値のみをチェックする正規表現を使用できます。
/24
例えば:
if ($remote_addr !~ "^192\.168\.1\.") { ... }
詳細については このドキュメント を、ifの使用については この注意 を参照してください。
if