web-dev-qa-db-ja.com

Apache httpd.confはイントラネットを許可します

apacheで認証されたユーザーとイントラネットのみを許可する正しい設定は何ですか?これはパスワードを要求せず、「満足」イントラネットユーザーなしでもパスワードを入力する必要があります...

<Directory "/var/www">
#   Allow Network Access and/or Basic Auth
Satisfy any

allow from 192.168

AuthName "Enter passwd!"
require valid-user
AuthUserFile /var/.passwd
AuthType Basic
allow from all
order deny,allow
</Directory>
4
Magreet

しかし、パスワードの入力を求められることなく、LANのユーザーにフルアクセスを許可したいとします。このシナリオでは、次を使用できます。

<Directory /home/www/site1/private>
  AuthUserFile /home/www/site1-passwd
  AuthType Basic
  AuthName MySite
  Require valid-user
  Order allow,deny
  Allow from 172.17.10
  Satisfy any
</Directory>

これにより、外部からの全員に認証が強制されますが、LAN IP範囲からの認証は必須ではありません。 Apacheは、認証なしでディレクトリにアクセスできるようにします。 Allowディレクティブに他のホスト名(ローカルまたはリモート)を追加して、ディレクトリへのアクセスを許可することもできます。許可されているApacheドキュメントを参照してください。

Apache wikiから http://wiki.Apache.org/httpd/BypassAuthenticationOrAuthorizationRequirements

3
Anagio

入れてみて

satisfy any
order deny,allow
deny from all

下部ではなく上部に:

<Directory "/var/www">
#   Allow Network Access and/or Basic Auth
order deny,allow
Satisfy any

allow from 192.168

AuthName "Enter passwd!"
require valid-user
AuthUserFile /var/.passwd
AuthType Basic

deny from all    
</Directory>
0
Konerak