Apache2.4のRequireディレクティブの書き方を調べたのでメモ
特定のIPのみ許可
# Apache2.2までの書き方
<Directory "/path/to/docroot/">
Order deny,allow
deny from all
allow from 192.168.11.0/24
allow from 172.17.
</Directory>
# Apache2.4の書き方
<Directory "/path/to/docroot/">
<RequireAny> // OR。1つ以上マッチすれば真。(Satisfy Any)
Require all denied
Require ip 192.168.11.0/24
Require ip 172.17.
</RequireAny>
</Directory>
特定のURLへのアクセスを拒否
SetEnvIf Request_URI "^/aaa" deny_aaa // 拒否するURLその1
SetEnvIf Request_URI "^/bbb" deny_bbb // 拒否するURLその2
# Apache2.2までの書き方
<Directory "/path/to/docroot/">
Order allow,deny
allow from all
deny from env=deny_aaa
deny from env=deny_bbb
</Directory>
# Apache2.4の書き方
<Directory "/path/to/docroot/">
<RequireAll> // AND。全てにマッチすれば真。(Satisfy All)
Require all granted
Require not env deny_aaa // 反転する場合はnotが使える
Require not env deny_bbb // 反転する場合はnotが使える
</RequireAll>
</Directory>