Première publication lundi 2 octobre 2000
Dernière modification
La redirection automatique (dans le cas qui m'intéresse) est le fait de demander à un navigateur web de rechercher l'information qu'il vient de demander à un autre endroit sans intervention de l'utilisateur.
Par exemple j'ai indiqué à un voyageur sur Internet d'aller voir une information sur la page <http://nte.univ-lyon2.fr/~brogniar/articles/redirection/information.html> mais l'information se trouve sur la page <http://nte.univ-lyon2.fr/~brogniar/articles/redirection/vraie_information.html>. Il faut que je puisse renvoyer à la deuxième page lorsque la première est demandée.
Il y a plusieurs solutions techniques possibles, mais la plus simple est d'indiquer où aller directement dans la page initiale. Pour cela je mets une instruction dans l'en-tête de la première page demandant au navigateur de retrouver la nouvelle page. Voici la balise contenant cette instruction :
<META http-equiv="refresh" content="0;URL=http://nte.univ-lyon2.fr/~brogniar/articles/redirection/vraie_information.html">
HTML permet d'inclure dans l'en-tête d'un document des méta informations (informations sur les informations). Parmi ces méta informations il est possible d'insérer des informations HTTP qui peuvent être exploitées par le serveur dans l'en-tête de réponse HTTP.
Ces informations sont insérées dans l'en-tête de document par la balise <META http-equiv=nom value=contenu>
(nom
est le nom d'un attribut HTTP et contenu est la valeur correspondante). Certains navigateurs peuvent utiliser les informations META
pour rafraichir le contenu d'une page au bout d'un certain temps avec en option la possibilité de la remplacer par une nouvelle page. C'est ce que j'exploite ici avec la balise <META http-equiv="refresh" content="duree;URL=nouvelURL>
(duree est la duree en secondes au bout duquel le navigateur peut chercher un nouvelle page et nouvelURL est l'URL permettant d'accéder à la nouvelle page).
Comme ni le serveur ni le navigateur ne sont tenu de tenir compte de ces méta informations il est nécessaire de permettre à l'utilisateur d'accéder "manuellement" à la nouvelle page au cas où la redirection ne fonctionne pas. C'est ce que je fais en indiquant dans le corps de ma page :
Suite à des événements dépendant de ma volonté la page information a été déplacée. Au bout d'une seconde votre navigateur devrait vous afficher la page "vraie information". S'il ne l'a pas fait, veuillez poursuivre en cliquant sur le lien suivant : <a href="http://nte.univ-lyon2.fr/~brogniar/articles/redirection/vraie_information.html">vraie information</a>.
<HTML>
<HEAD>
<META http-equiv="content-type"
content="text/html;charset=iso-8859-1">
<TITLE>Test http-equiv location</TITLE>
<META http-equiv="refresh" content="0; URL=http://nte.univ-lyon2.fr~brogniar/articless/redirection/vraie_information.html">
</HEAD>
<BODY>
<P>Suite à des événements dépendant de ma volonté la page
information a été déplacée. Au bout d'une seconde votre navigateur
devrait vous afficher la page "vraie information". S'il ne l'a pas fait,
veuillez poursuivre en cliquant sur le lien suivant : <A
href="http://nte.univ-lyon2.fr~brogniar/articless/redirection/vraie_information.html">vraie
information</A>.</P>
</BODY>
</HTML>
Fielding R., J. Gettys J., J. Mogul J., H. Frystyk Nielsen H., and T. Berners-Lee T., "HTTP Version 1.1", RFC 2068, janvier 1997.
World Wide Web Consortium, "HTML 4.0 Specification - W3C Recommendation, revised on 24-Apr-1998", avril 1998.