BLOG

Go to top


.htaccess で特定のファイルに対してIPアドレスによるアクセス制限を設定する

October 3, 2007 10:58 AM

重い処理を行う CGI を叩かれないようにしたい場合などに使用する。今じゃあ悪意があろうとなかろうと叩かれたりするからねえ。

以下を .htaccess に記述してアップロードする。FTP クライアントの設定によっては .htaccess が見えなくなっていたりするので注意。以下は、特定のIPアドレスからのみ叩けるようにする場合の設定。

<Files ~ "^FILENAME\.STUFFIX$">
order deny,allow
deny from all
allow from IP ADDRESS
</Files>

「FILENAME\.STUFFIX」「IP ADDRESS」は任意のものに変更します。許可したいIPアドレスが複数ある場合は改行区切りで列挙します。許可されていないIPアドレスから叩こうとすると 403 が返るようになります。

逆に特定のIPアドレスからのみ叩けないようにする場合は以下。

<Files ~ "^FILENAME\.STUFFIX$">
order allow,deny
allow from all
deny from IP ADDRESS
</Files>

正規表現さえ知っていればいろいろな形でアクセス制限をかけることができます。例えばhtmlファイルのみ特定のIPアドレスからのみ叩けるようにする場合(需要があるのかどうかは別として)は以下。

<Files ~ "\.html$">
order deny,allow
deny from all
allow from IP ADDRESS
</Files>

拡張子が何であっても、とにかく「himitsu」というファイル名であれば特定のIPアドレスからのみ叩けるようにする場合は以下。

<Files ~ "^himitsu\.*$">
order deny,allow
deny from all
allow from IP ADDRESS
</Files>

拡張子がjpg、gif、pngのファイルは特定のIPアドレスからのみ叩けるようにする場合は以下。

<Files ~ "\.(jpg|gif|png)$">
order deny,allow
deny from all
allow from IP ADDRESS
</Files>

out of memory と戦うあなたへ。MTの処理は重いので、run_periodic_tasks を動かす CGI を使ったりする場合は必ずアクセス制限をかけておきましょう。

Comments


Contact me

Copyright © 2005 - 2017 okayama All rights reserved.