J'ai le script de configuration suivant dans mon installation Apache 2.4.7 :
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
Require not ip ip.range.A ip.range.B
RewriteEngine On
RewriteRule ^faq/(\w+)/(\d+)/?$ faq.php?code=$1&num=$2 [NC]
ErrorDocument 403 /www/faq.php?code=web&num=403
Et, je reçois cette erreur lorsque j'essaie de voir une page en utilisant l'une des adresses IP bloquées :
De plus, une erreur 403 Forbidden a été rencontrée lors de la tentative d'utilisation d'un ErrorDocument pour gérer la demande.
Comme je veux fournir deux types de 403 aux clients entrants ; je dois rediriger les utilisateurs restreints par les plages d'IP A
et B
pour leur montrer la page faq/WEB/403/
.
Y a-t-il un moyen de bloquer l'accès aux utilisateurs avec ces IP et de leur montrer ma page personnalisée ErrorDocument
?
J'ai essayé d'utiliser ce qui suit à la place de la balise requireAll
(comme défini dans la directive RewriteCond
) :
RewriteCond %{REMOTE_HOST} ^ip.range.A [OR]
RewriteCond %{REMOTE_HOST} ^ip.range.B
RewriteRule /faq/WEB/403/ [L,R]
mais en vain. Les utilisateurs ont pu accéder librement aux pages dans ce dernier cas.
Le fichier de configuration actuel est le suivant (et aucun utilisateur n'est bloqué dans l'accès aux pages web) :
Options Indexes FollowSymLinks
AllowOverride All
RewriteEngine On
RewriteRule ^faq/(\w+)/(\d+)/?$ faq.php?code=$1&num=$2 [NC]
RewriteCond %{REMOTE_HOST} ^ip.range.A [OR]
RewriteCond %{REMOTE_HOST} ^ip.range.B
RewriteRule /faq/WEB/403/ [L,R]