IPアドレスの判定について、一部環境下では、HTTPリクエストヘッダの X-Forwarded-For(以下XFF) を参照する必要があります。
なお、XFFではIPアドレスがカンマ区切りで2個以上エントリーされる場合(※)があるため、判定にはXFFの最後に記載されたIPアドレスをご参照ください。
※通常、プロクシを利用してアクセスした場合、「X-Forwarded-For: <client>, <proxy1>, <proxy2>」の順ですが、XFFを偽装してアクセスされた場合、先頭に偽装したIPアドレスが記載されます。このため、最も右の IP アドレスをご利用ください。
サンプル
.htacessで指定IPアドレスのみアクセス許可する場合
.htaccess で、SetEnvIf と allow を利用することが可能であり、「11.1.111.11」と「222.222.222.222」のアクセスを許可するには以下のとおりです。
# 「11.1.111.11」と「222.222.222.222」のアクセスを許可
SetEnvIf X-Forwarded-For "^11\.1\.111\.11$" allowed_ip
SetEnvIf X-Forwarded-For "^222\.222\.222\.222$" allowed_ip
allow from env=allowed_ip