quelle serait la configuration correcte pour autoriser uniquement les utilisateurs authentifiés et l'intranet (sans besoin de mot de passe) dans Apache? Cela ne demande pas un mot de passe et sans le "satisfaire" les utilisateurs de l'intranet sont également tenus de saisir un mot de passe ...
<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>
Mais disons que vous voulez que les personnes de votre réseau local aient un accès complet, sans être invité à entrer un mot de passe. Dans ce scénario, nous pourrions utiliser:
<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>
Cela obligera tout le monde de l'extérieur à s'authentifier, mais ceux qui proviennent de la plage IP du réseau local ne seront pas tenus de le faire. Apache leur permettra d'accéder au répertoire sans s'authentifier. Vous pouvez ajouter d'autres noms d'hôte (locaux ou distants) à la directive Allow pour leur donner également accès au répertoire. Voir les documents Apache sur Autoriser.
Depuis le wiki Apache http://wiki.Apache.org/httpd/BypassAuthenticationOrAuthorizationRequirements
Essayez de mettre
satisfy any
order deny,allow
deny from all
en haut au lieu de bas:
<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>