La solution : Je dois placer les directives "allow/deny" à l'intérieur de la première directive "Directory" (qui se trouve être celle de la racine). Je suppose que c'est parce qu'il a un AllowOverride None qui ne permet pas aux enfants de spécifier allow/deny ?
<Directory />
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
Deny from xxx.xx.xxx.xx
</Directory>
Original :
Cette configuration permet toujours l'accès à toutes les IP après le redémarrage d'Apache.
<VirtualHost *:80>
ServerName www.xxx.com
DocumentRoot /var/www/vhosts/xxx
<Directory /var/www/vhosts/xxx>
Options Indexes FollowSymLinks
AllowOverride none
Order deny,allow
Deny from all
Allow from 127.0.0.1
</Directory>
</VirtualHost>
0 votes
Donc vous aviez bien deux directives <Directory> comme je le supposais ? Placer cette directive sur la racine est une étape inhabituelle.
0 votes
Comme Patrick R a commenté la question, mettre une directive Directory avec le même chemin que documentroot cause des problèmes. J'ai un problème similaire dans ma configuration apache. J'ai résolu le problème en désactivant le répertoire problématique et en écrivant les options directement dans la directive virtualhost.