apache httpd.confでのアクセス制限の条件にANDを使う
例えばドコモ端末の場合だけIP制限もかけたい時とか。
そんな場合があるのかどうかは置いといて、とりあえず出来たので書く。
SetEnvIf Remote_Addr "^(210.153.84|210.136.161|210.153.86|124.146.174|124.146.175)" is_valid_ip BrowserMatch "^DoCoMo" is_docomo SetEnvIf is_docomo "^$" !is_valid_ip BrowserMatch "^(J-PHONE|Vodafone|SoftBank|KDDI|UP.Browser)" other_valid_mobile <Location /> Order Deny,Allow Deny from All Allow from env=is_valid_ip Allow from env=other_valid_mobile </Location>
環境変数is_docomoが存在しない場合is_valid_ipもunsetするので、両方がマッチした場合のみアクセスが許可される。
もっと簡単な方法がある気がしてならないのだけども。