Satisfy All

Apache
スポンサーリンク

古いApacheのhttpd.confを見ていたら、

<Files ~ "^\.ht">

の中で、

Satisfy All

ってのが指定してあった。

 

Satisfy ディレクティブとは?

AllowRequireの両方が使われているときの アクセスポリシーを設定します。パラメータはAllAnyです。このディレクティブはある場所へのアクセスがユーザ名/パスワードクライアントのホストのアドレスで制限されているときにのみ 役立ちます。デフォルトの動作 (All) はクライアントがアドレスによる アクセス制限を満たし、かつ正しいユーザ名とパスワードを入力することを 要求します。Anyでは、クライアントはホストの制限を満たすか、 正しいユーザ名とパスワードの入力をするかをすればアクセスを許可されます。 これは、ある場所をパスワードで保護するけれど、特定のアドレスからの クライアントにはパスワードの入力を要求せずにアクセスを許可する、 というようなときに使用できます。

例えば、同じネットワーク上にいる人にはウェブサイトのある部分について 無制限のアクセスを許したいけれど、外のネットワークの人には パスワードを提供させるようにするためには、次のような設定をすることが できます:

Require valid-user
Allow from 192.168.1
Satisfy Any

mod_access_compat - Apache HTTP サーバ バージョン 2.4

AllとAnyの違いは、

  • Satisfy All がAND条件
  • Satisfy Any がOr条件

ってことですな。

 

 

apache2.4だと当該箇所への指定は不要

  • RHEL8
  • dnf版Apache2.4

だと、

<Files ".ht*">
  Require all denied </Files>

っていう記述になってるから、ここに

Satisfy All

を追記するのは不要ですな。

全部拒否しているし、

AllowとRequireの両方が使われている

に該当しないし。

コメント