httpd.confの末尾に次の記述をしてapacheをリスタートしtop.htmlにアクセスしても
403エラーとなりアクセスできません。原因が分かる方よろしくお願いします。
<Directory "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs/aaa">
Order deny,allow
Deny from all
SetEnvIf REFERER localhost referer_ok
Allow from env=referer_ok
</Directory>
<Files "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs/aaa/top.html">
Order allow,deny
Allow from all
</Files>
No.2ベストアンサー
- 回答日時:
質問の内容を整理すると
「ローカルホストからのアクセスはすべてのファイルに対してアクセスを許可して、外部からのアクセスは許可したファイルのみアクセスできるようにしたい」
ということですね。
私も、下の行が何やっているのか(?)とよく分からなかったのですが、
ローカルホストからのアクセスを許可したかったということですね。
>SetEnvIf REFERER localhost referer_ok
>Allow from env=referer_ok
えーっと、セキュリティの話からさせていただきます。
これは、非常にまずいやり方です。
理由は簡単で、 Referer というのは、HTTPクライアント(ブラウザ)が送信してきた内容ですので、リファラーは偽装可能です。
たとえば、「Firefox addon Modify Referer」などで検索していただければ見つかると思います。
これが悪用された場合、リファラーを http://localhost/ のように偽装することで外部からの不正アクセスリスク(セキュリティホール)が生じます。
下のようにIPアドレスまたはドメイン名でアクセス制限をしてください。
<Directory ....>
Order deny,allow
Deny from all
# LAN からのみ(ネットワークアドレス指定)
Allow from 192.168.1.0/24
# LOCALHOST <-- よく設定漏れして http://localhost/ でアクセスできないことに気づく(^^;)
Allow from 127.0.0.1
</Directory>
つまり、下のような感じになると思います。
<Directory htdocs/aaa>
Order deny,allow
Deny from all
Allow from 127.0.0.1
<Files top.html>
Order allow,deny
Allow from all
</Files>
</Directory>
つぎに、<Files> で top.html のアクセス制御が上書きされなかった理由について
質問内容のような記述の <Files> はシンタックスエラーにはなりませんが、意味的にエラーになると思います。マニュアルを読む限り <Files> はファイル名を指定する(パス名ではない)ためにあります。特定のディレクトリのファイルに対して使用する場合に、 <Directory> と合わせて使用できるとあります。
<Files> は .htaccess と併用して個別のファイルのアクセスを制御するために用いるのが標準的なようです。
httpd.conf には、 <FilesMatch "^\.ht"> とあるように設定ファイルなどを隠すために使用しています。
ちなみに、 <Files top.html> を <Directory> の外で指定した場合、すべてのディレクトリの top.html にアクセスできるようになります。つまり、あるディレクトリに対して <Directory> でアクセス禁止に指定しても <Files top.html> はそれを上書きするため top.html だけはアクセス禁止が無効化されます。正常な動作ですが、セキュリティ上問題になることも考えられるため注意して使用したほうがいいでしょう。
詳しい回答ありがとうございます。
初心者の自分にも理解できる分かり易い回答でした。
セキュリティーの問題があるのですね、リファーじゃなくIPアドレスで識別したいと思います。
FilesもDirectoryの中で使うようにしたいと思います。
ありがとうございました。
No.1
- 回答日時:
httpd.conf の設定例
<Directory "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs/aaa">
Order deny,allow
Deny from all
<Files top.html>
Order allow,deny
Allow from All
</Files>
</Directory>
詳細はマニュアルを確認してください。
マニュアルを有効にするには、 http.conf のマニュアル設定をインクルードします。
# Local access to the Apache HTTP Server Manual
Include conf/extra/httpd-manual.conf
↑この行の #Include を Include に変更します。
以下のようなURL(/manual/)にアクセスするとマニュアルが表示されます。
サーバ名、ポート番号は適切に置き換えてください。
http://localhost:8080/manual/
http://localhost:8080/manual/sections.html
回答ありがとうございます。入れ子にするのですね。
しかし、まだ何故質問内容の様にしても実現出来なかったのか理解できてません。
まずdirectoryでlocalhost以外からのアクセスを禁止して、
そのあとfilesでtop.htmlだけはどこからでもアクセス出来るように
したらtop.htmlだけはdirectoryで設定したアクセス禁止の設定を上書きして
localhost以外からでもアクセス出来るようになる、
と思うのですが、どうなんでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
FFFTPを使ったアップロードがで...
-
存在しないページを指定してもT...
-
大文字はできるだけ使わない方...
-
Thunderbird 振り分けされなく...
-
MODE関数を文字でできる関数は...
-
DIGコマンドでstatusがREFUSED...
-
java auto updaterとは何でしょ...
-
C:\\Documents and Settingsが...
-
C#でCSVファイルをリストビュー...
-
Tera Termでのコマンド流し込み...
-
フォルダのサムネイル画像
-
SSDのTrimって毎日実行していい...
-
コマンドの戻り値が「130」
-
centos7で、rshコマンドが使用...
-
大量のフォルダへのハイパーリ...
-
ブラウザにIPアドレスを直打ち...
-
エクセルで定期的(30分おき)...
-
マイピクチャのフォルダ!?を...
-
WindowsServer2003の、SMB1.0を...
-
GV-MVP/RX3 TVキャプチャーボ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
大文字はできるだけ使わない方...
-
FFFTPを使ったアップロードがで...
-
htaccess ssi basic認証
-
BASIC認証でダイアログが開かない
-
Apacheで特定のファイルのみア...
-
ルート相対パス
-
HTMLで大文字と小文字を区別し...
-
XAMPPのドキュメントルート変更...
-
C++でWEBブラウザを作成する
-
XAMPPで外部からアクセスする方法
-
ASPページを開くとユーザー名と...
-
403 Forbidden と表示されます。
-
文字コードも小文字で入力して...
-
ホームページのファイル構成の...
-
存在しないページを指定してもT...
-
httpdの設定で、index.htmlを置...
-
Xampp-win32-1.7.3に切り替えた...
-
IISのNotFound表示
-
Thunderbird 振り分けされなく...
-
フォルダのサムネイル画像
おすすめ情報