Nous nous inscrivons à une ressource en ligne qui utilise http-referer comme authentification (mauvaise idée, je sais) pour prouver que la requête provient de notre intranet (adresse IP n'est pas disponible pour cela comme il y a un proxy de niveau supérieur).Changement de référenceur http via une redirection
Malheureusement, il se peut que leur système nécessite une URL de référence spécifique plutôt que de prendre le domaine. Cela signifie que lorsque nous souhaitons créer un lien vers la ressource à partir d'une page différente, nous devons soit enregistrer une autre URL avec eux, soit créer un lien vers une page d'accueil à laquelle ils doivent cliquer de nouveau.
Si nous devons aller dans cette voie, je voudrais rendre aussi imperceptibles que possible et ainsi se demandait quelle est la meilleure approche serait d'atteindre les objectifs suivants:
http://intranet/somerandomurl
a un lien vershttp://intranet/AuthorisedUrl
qui doit être le referrer àhttp://externalsite/
est-il possible de le faire sans littéralement maki les gens cliquent sur un lien? (La grande majorité des navigateurs seront IE6 ou IE7 si cela peut aider, si certains doivent cliquer sur le lien mais je peux utiliser JS pour la plupart je suis d'accord avec ça).
Je pensais que ce serait JS côté client. Y a-t-il des problèmes d'incohérence de navigateur avec ceci, avec certains changeant le referer comme voulu mais d'autres pas? (et ouais je suis d'accord avec cette mise en garde mais ce n'est pas notre système donc rien que je puisse faire à ce sujet). – Chao
Il ne devrait pas y avoir d'incohérence de navigateur, mais vous pouvez le tester ici: http://htmlto.com/redirect/1.html. En cliquant sur le lien, vous arriverez à 2.html, qui redirigera Javascript vers 3.php, qui est configuré pour renvoyer le HTTP_REFERER. Il devrait dire 2.html; si jamais il dit 1.html, vous avez une incohérence de navigateur. – Yahel
Je suis corrigé; IE ne transmettra pas le http_referer d'une redirection JavaScript; voir mon édition pour le correctif. – Yahel