Je sais que vous pouvez modifier un fichier hosts pour rediriger une URL vers une adresse IP de la manière suivante:
127.0.0.1 google.com
mais comment forcer une redirection vers une URL au lieu d'une adresse IP?
par exemple.
mysite.com/welcome.aspx google.com
L'URL explicite ne fonctionne pas et si l'adresse IP de mysite.com est 222.222.222.222, les éléments suivants ne fonctionnent pas
222.222.222.222/welcome.aspx google.com
Tu ne peux pas. Une redirection nécessite un serveur Web pour accepter la première requête et renvoyer la redirection. Le fichier "hôtes" vous permet simplement de définir vos propres enregistrements DNS.
Non, mais vous pouvez ouvrir un serveur Web, par exemple 127.0.0.77, et l'utiliser pour vérifier si l'URI de la demande est "/welcome.aspx" ... Si oui, redirigez-vous vers Google, sinon chargez le site d'origine.
127.0.0.77 mysite.com
Appliquez cette astuce.
Tout d’abord, vous avez besoin de l’adresse IP de l’URL que vous souhaitez rediriger vers . Supposons que vous souhaitiez rediriger vers stackoverflow.comPour le trouver, utilisez la commande ping dans une invite de commande .
ping stackoverflow.com
dans la fenêtre d'invite de commande et vous verrez l'adresse IP numérique de stackoverflow . Maintenant, utilisez cette adresse IP dans votre fichier hôte.
104.16.36.249 google.com
yay maintenant google sert stackoverflow :)
Vous pouvez utiliser la directive RedirectMatch dans Apache pour faire quelque chose de similaire que vous voulez.
C'est assez simple.
RedirectMatch/ http://222.222.222.222/
En tout cas, je ne vois aucune raison de faire ça. N'essayez-vous pas d'intercepter le trafic? Il y a de meilleures façons. Pour les machines Linux en tant que routeur: iptables -j REDIRECT + Squid ou Apache. Pour les routeurs Cisco, vous pouvez utiliser WCCP sur un cache ou un serveur Web ...
fichier hôtes:
1.2.3.4 google.com
1.2.3.4 - ip de votre serveur.
Exécutez le script sur le serveur pour rediriger les utilisateurs vers l'URL souhaitée.