web-dev-qa-db-fra.com

Rediriger le domaine sauf les utilisateurs provenant d'une adresse IP spécifique

J'ai un serveur Web Apache qui dessert 2 domaines. À présent, dans mon école, un domaine est bloqué. on n'est pas (même page web pour le moment). Je souhaite que si les personnes qui se connectent à mon ancien domaine (celui qui n'est pas bloqué) soient redirigées, à moins que cela ne provienne de l'adresse IP de l'école. Comment pourrais-je faire cela, je sais que cela a quelque chose à voir avec .htaccess mais je ne sais pas comment faire cela.

4

Essayez ce qui suit dans le haut de votre fichier .htaccess (avec mod_rewrite):

RewriteEngine On
RewriteCond %{HTTP_Host} olddomain\.com [NC]
RewriteCond %{REMOTE_ADDR} !203\.0\.113\.123
RewriteRule (.*) http://newdomain.com/$1 [R=301,L]

203.0.113.123 est l'adresse IP externe de l'école.

Cette procédure est identique à celle de toute autre redirection de domaine à domaine, avec une condition supplémentaire pour exclure les demandes provenant de l'adresse IP ci-dessus.

PDATE: Si vous effectuez cette redirection dans la configuration de votre serveur principal, vous devrez peut-être modifier légèrement la valeur RewriteRule ci-dessus. S'il se trouve dans un conteneur <Directory>, laissez-le tel quel, sinon s'il se trouve directement dans la configuration du serveur (ou de l'hôte virtuel), modifiez-le de la manière suivante:

RewriteRule ^ http://newdomain.com%{REQUEST_URI} [R=301,L]
3
DocRoot