10. 正しい.htaccessなのに・・・
AllowOverrideの設定の意味
AuthConfig
認証に関するディレクティブの使用を許可する。(AuthUserFile, AuthName, AuthType,,requireなど)
Indexes
ディレクトリインデックスを制御するためのディレクティブの使用を許可する。(DirectoryIndexなど)
Limit
ホストへのアクセス制御を行うためのディレクティブの使用を許可する。(Allow, Deny, Orderなど)
Options
特定のディレクトリにおける機能を指定するためのディレクティブの使用を許可する。
※上記以外に、FileInfo(ドキュメントタイプを制御するディレクティブ)がある。
Options -Indexes →Optionsの許可が必要
AuthUserFile /var/www/html/.htpasswd
AuthGroupFile /dev/null
AuthName "Please enter your ID and password“ →AuthConfigの許可が必要
AuthType Basic
require valid-user
DirectoryIndex index.htm index.html →Indexesの許可が必要
order deny,allow →Limitの許可が必要
2012/12/21 -9- Copyright Digital-Effect Network Co., Ltd. All rights reserved.
11. 正しい.htaccessなのに・・・
ここまでのまとめ
httpd.confにて、AllowOverrideで許可されていない設定を
.htaccessに記載すると、.htaccessをサーバに保存した瞬間に
Internal Server errorが発生します。
例えば、以下のような.htaccessの場合、AllowOverrideにOptionsとLimitの許可設定が
ないと、Internal Server Errorとなります。
Options -Indexes
order deny,allow
allow from 192.168.1.5
deny from all
httpd.confとの関係を知らないまま、.htaccessを気軽に設置したりすると、思わぬところで
サーバエラーが発生するかもしれません。
サーバ管理者や、サーバ管理会社に事前にサーバの仕様を確認しておきましょう。
2012/12/21 - 10 - Copyright Digital-Effect Network Co., Ltd. All rights reserved.
12. アクセス制限してるけどサイトが見れる?
アクセス制限したら、Apacheのデフォルトの
ページが表示される?
2012/12/21 - 11 - Copyright Digital-Effect Network Co., Ltd. All rights reserved.
13. アクセス制限してるけどサイトが見れる?
アクセス制限したら、Apacheのデフォルトのペー
ジが表示される。なぜ?
Options -Indexes
order deny,allow
allow from 192.168.1.5
deny from all
先ほどの設定内容の場合、192.168.1.5以外のIPからアクセス(※1)すると、Apahceの
デフォルトのページ(↓)が表示されてしまいます。
(※1) http://192.168.1.5/ というようなURLにアクセスした場合に限ります。
http://192.168.1.5/test.html といったURLの場合は、
Forbiddenの表示となります。
アクセス制限してるから、許可して
いないIPからのアクセスは全て、
Forbiddenの表示にしたい。
2012/12/21 - 12 - Copyright Digital-Effect Network Co., Ltd. All rights reserved.