0017

.htaccessでアクセス制限をかける方法

.htaccessでアクセス制限をかける方法

2012.8.16

前回「サーバレベルでIP制限をする方法」という記事を書きましたが、知り合いから「.htaccessで気軽にやりたい」と言われw、分からないながらも調べてみたので、その方法をメモ。

コード

#
#1.ブラウザ環境が日本語以外の時にアクセスを制限する
#
SetEnvIf Accept-Language "^$" non_japanese

#
#2.ブラウザ環境が日本語以外の時にアクセスを制限する
#調べていたら書き方が2種類あったのでねんのため両方やっておくw
#
SetEnvIf Accept-Language "^[^(ja)]+$" non_jp

#
#3.cn|tw言語のブラウザで来た時に制限する
#
SetEnvIf Accept-Language "zh-(cn|tw)" cn_lang

#
#4.HTTP_EXPECTを設定する英文BOTのアクセス規制
#
SetEnvIf Expect "^.+$" spam_proxy

order allow,deny
allow from all

#5.上記で設定したものをはじく記述
deny from env=non_japanese
deny from env=non_jp
deny from env=cn_lang
deny from env=spam_proxy

#6.しつこいIPアドレスを制限
deny from xxx.xxx.xxx.xxx

#7. .cnドメインを制限(動作重たくなります)
deny from .cn

簡単な解説

参考