外部からの.htaccessファイルへのアクセスを404で拒否するには

Apacheでは外部から.htaccessファイルへのアクセスがあるとデフォルトで403(Forbidden)を返すようになっています。

これでも一応、.htaccessファイルを保護できていますが、403コードだと、ファイルへはアクセスできないものの、ファイルがそこに存在するということを攻撃者に推測されてしまいます。

なので、403ではなく404を返して、ファイルが存在しないかのように見せかけたい。

httpd.confに以下のように記述すれば404で応答するようになります。


<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^/\.htaccess /your/path/to/404.html
</IfModule>


以上。

2014/10/30 追記
上記の方法だと確かに指定したエラーページを返しますが、レスポンスのステータス自体は200でした。。。
あんまし意味ないじゃん!
ので、以下のように変更しました。

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^/\.htaccess - [R=404,L]
</IfModule>


これならレスポンスのステータスも404になります。
以上。

この記事へのComments:

管理人のみ通知 :

Trackbacks:


プロフィール

トニヒコ

Author:トニヒコ
趣味は旅行と読書とマンガ。
将来の夢はコスモポリタン!

リンク・フリーです。

My hobby is traveling and reading(include manga).
My dream is to become cosmopolitan!

最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
スポンサード リンク
マクロミルへ登録
FC2カウンター
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QR