.htaccessでアクセス制限を設定する方法: ホスト名とIPアドレスの活用例
2007.08.14
error この記事は最終更新日から17年以上が経過しています。
.htaccessに下記のように記述することで、特定のホスト及びIPアドレスに対してアクセス制限をかけることができます。
order allow,deny
allow from all
deny from aaa.bbb.ne.jp
deny from ccc.ddd.co.jp
これでaaa.bbb.ne.jpとccc.ddd.co.jpというホストからのアクセスを制限することができます。
allow: アクセスを許可するホスト/IP
deny: アクセスを拒否するホスト/IP
です。
上記の場合は、「基本的に全部のアクセスを許可するけどaaa.bbb.ne.jpとccc.ddd.co.jpからはアクセスしちゃ駄目」という意味になります。
逆に、特定のホスト/IPからのみアクセスを許可したい場合は、
order deny,allow
deny from all
allow from aaa.bbb.ne.jp
となります。
これは、「基本的に全部のアクセスを拒否するけどaaa.bbb.ne.jpからはアクセスしてOK」という意味になります。
自分専用のWebアプリケーションの管理ツール等を設置するディレクトリに設定しておくと良いですね。
もちろん、外出先等からその管理ツールにアクセスできなくなるという難点もあります。
他には、携帯専用サイトでDoCoMoやau、vodafoneのホストからのみ受け付けるよう設定する、とか。
allow及びdenyに指定できるホスト名は、後方一致でワイルドカード的に指定することができます。
aaa1.bbb.ne.jpやaaa2.bbb.ne.jp、aaa3.bbb.ne.jp等を一括でアクセス制限したい場合は
order allow,deny
allow from all
deny from .bbb.ne.jp
とすれば、ホストの末尾が.bbb.ne.jpからのアクセスを全て拒否できます。
ただし、この使い方は無関係な人までアクセス拒否してしまう可能性が非常に高いので、設定する場合はその辺を考慮に入れる必要があります。
allow及びdenyには、ホスト名だけでなくIPアドレスも指定できます。
IPアドレスをワイルドカード的に指定する場合は前方一致です。また、サブネットマスクによる範囲指定も可能です。
order allow,deny
allow from all
deny from 192.168.0.1
deny from 192.168.1.
deny from 192.168.2.0/255.255.255.0
deny from 192.168.3.0/16
こんな感じで。
.htaccessで特定のディレクトリのみ「/」を「/index.html」にリダイレクトさせる
2023.05.09
指定したディレクトリのみ、トップページへのアクセスを/index.htmlにリダイレクトさせる方法を紹介します。
.htaccessを使ったリダイレクト設定方法—URI変更時の対応を簡単に
2023.05.01
Webサイトの構成変更や移転時に便利なリダイレクト設定方法をご紹介します。.htaccessを使って、URIが変更になった場合でも旧ページから新ページへスムーズに転送できるように設定する方法を解説します。
IPアドレスでアクセス制限する方法を.htaccessで実装
2023.04.07
.htaccessを使って、特定のIPアドレスからのアクセスを制限する方法を紹介します。指定したIP以外のアクセスをブロックしたり、逆に特定のIPを拒否する方法も解説。さらに、Requireディレクティブを使った設定方法も合わせて紹介します。
さくらのレンタルサーバーでPHPを「.html」などの拡張子で実行する方法
2009.09.20
さくらのレンタルサーバーでは、PHPがCGIとして動作しているため、通常の.htaccess設定ではPHPを「.html」拡張子で実行できません。この記事では、特定の手順を踏んでPHPを動作させる方法を詳しく解説します。