.htaccessの複数のIPからURLパスへのアクセスをブロックする

.htaccessの複数のIPからURLパスへのアクセスをブロックする

この方法でのみ.htaccess使用できます<Location><Directory>不可能です。

現在、この方法を使用してIPアクセスをブロックしています。

<RequireAll>
  Require all granted
  Require not ip 1.0.132.75
  Require not ip 1.0.209.198
  Require not ip 1.0.209.229
  # ... many more IPs

/typo3/このIPが/ by the PHP loginからアクセスできる特定のルートにのみアクセスするのをブロックしたいと思います/typo3/index.php。しかし、すべてをブロックしても大丈夫です/typo3

確かにこれを使うことができますが、より短くて簡潔なバリエーションが欲しいです。

RewriteCond %{REMOTE_ADDR} "=1.0.132.75"
RewriteRule "^/typo3" "-" [F]

まあ、今書いてみるとわかります。

RewriteCond %{REMOTE_ADDR} "1\.0\.132\.75|1\.0\.132\.76|..."
RewriteRule "^/typo3" "-" [F]

ただし、正規表現は非常に長くなります(約3000 IP)。たぶんより良い解決策があるかもしれません。

答え1

これは可能です。他の人が見つけて追加できるように、ここに質問を残します。

RewriteCond %{REMOTE_ADDR} "=1.0.132.75" [OR]
RewriteCond %{REMOTE_ADDR} "=1.0.132.76"
RewriteRule "^/typo3" "-" [F]

関連情報