Order、Allow、Denyディレクティブ
Orderディレクティブの動作に誤解があったので忘れないようにメモしておく。
- Deny,Allow
デフォルトではこの順序。
アクセスはデフォルトで許可する。
Deny ディレクティブに合わないか、Allow ディレクティブに合うクライアントはアクセスを許可する。
つまり、DenyとAllowの両方に合うクライアントは許可される。
- Allow,Deny
アクセスはデフォルトで拒否する。
Allow ディレクティブに合わないか、Deny ディレクティブに合うクライアントはアクセスを拒否する。
つまり、DenyとAllowの両方に合うクライアントは拒否される。
- Mutual-failure
Allowリストに現れて、Denyのリストに現れないホストのみがアクセスを許可する。
非推奨らしく、Order Allow,Deny を使えとのこと。
あるIPからのみアクセスを許可する場合、次のように書いておけばAllowにマッチしたIPは、
Denyの評価が行なわれないと思ってた・・・(--;)
間違い)
Order Allow,Deny Allow from xxx.xxx.xxx.xx Deny from all
こう書かないといけないんだね。
つか、ドキュメントにも書いてあった・・・
正解)
Order Deny,Allow Deny from all Allow from xxx.xxx.xxx.xx