retour vers le site AccessiWeb

Guide AccessiWeb


vous êtes ici : Accueil > Fiches AccessiWeb : Consultation > Critère 13.2

Critère 13.2 : Chaque redirection automatique de page Web s'effectue-t-elle côté serveur ?

revenir en haut de la page

Carte d'identité du critère 13.2 [niveau AccessiWeb : Argent]

Test(s) AccessiWeb permettant de vérifier le critère 13.2

Note : le(s) test(s) suivant(s) sont issu(s) de AccessiWeb v1.1 [Déployé].

Autre(s) fiche(s) AccessiWeb à consulter en relation avec cette fiche

Correspondances avec des critères d'autres référentiels sur l'accessibilité du Web

revenir en haut de la page

Comprendre

Comprendre le critère

Toutes les redirections automatiques de page Web doivent s'effectuer côté serveur.

Bénéfices pour les utilisateurs

Valeur ajoutée pour le site

revenir en haut de la page

Comment évaluer

Note : de manière générale, il est conseillé de faire l'évaluation d'un critère via l'analyse de son code source. Ce procédé d'évaluation par le code source est détaillé ci-après quand il est possible : procédé d'évaluation en 3 étapes via le ou les tests associés au critère. Les procédés d'évaluation par différents outils sont donnés en complément de l'évaluation par le code source.

Par le code source

  1. Sélectionner le(s) élément(s) à tester : ouvrir le code source de la page Web et sélectionner le code associé à tous les éléments suivants (exemple de code source : <meta http-equiv="refresh" content="délai pour la redirection en seconde" url="nom_de_la_page.html" />) :
    • balise meta avec l'attribut http-equiv="refresh"
    • fonction javascript


  2. Appliquer le(s) test(s) suivant(s) :
  3. Valider le critère : le critère est validé si vous répondez oui au test applicable précédent.


Par l'utilisation d'outils

Pour une liste complète des outils utilisés pour évaluer l'accessibilité des pages web et un résumé de leurs principales fonctionnalités, reportez-vous à la page Outils d'aide à l'évaluation.

Evaluer avec la Barre d'outils Accessibilité du Web pour Internet Explorer (version 2.0 beta en français) :
Pour le test 13.2.a [Argent]
  1. Sous Internet Explorer, ouvrir la page à analyser.
  2. Dans le menu "Informations" de la Barre d'outils Accessibilité du Web (version 2.0 beta), activer l'option "Informations sur les métadonnées [nouvelle fenêtre]" pour détecter la présence de la balise refresh
  3. Si présent, la balise refresh est affiché dans la colonne "HttpEquiv" ainsi que le temps prévu entre chaque rafraîchissement de page (ex : 300).
  4. Dans le menu "IE" de la Barre d'outils Accessibilité du Web (version 2.0 beta), désactiver l'option "Activer le javascript".
  5. Recharger la page en appuyant sur la touche F5.
  6. Cliquer sur les liens faisant l'objet d'une redirection.
  7. Vérifier que chaque redirection automatique de page Web s'effectue côté serveur.
  8. Si c'est le cas, le test est validé.

Evaluer avec la Barre d'Outils Web Developper pour Firefox (version 1.1.4 en français) :
Pour le test 13.2.a [Argent]
  1. Sous Firefox, ouvrir la page à analyser.
  2. Dans le menu "Désactiver" de la Barre d'Outils Web Developper (version 1.1.4), activer l'option "Désactiver JavaScript" puis l'option "Tout le JavaScript".
  3. Recharger la page en appuyant sur la touche F5.
  4. Cliquer sur les liens faisant l'objet d'une redirection.
  5. Vérifier que chaque redirection automatique de page Web s'effectue côté serveur.
  6. Si c'est le cas, le test est validé.

revenir en haut de la page

Comment mettre en oeuvre

Avertissement : les informations du paragraphe "Comment mettre en oeuvre" sont données à titre indicatif. Les contenus des sous-paragraphes Implémentation et Exemple de bonne pratique ne présentent pas tous les codes d'implémentation.


Qui est concerné ?

Le développeur doit veiller au respect de ce critère.

Implémentation

La redirection est utilisée le plus souvent pour résoudre les problèmes suivants :


Actuellement, la méthode de redirection la plus utilisée consiste à intégrer à la page une balise META en entête :

<meta http-equiv="refresh" content="5" url="http://www.le beaunouveausite.com" />


Grâce à cette balise, la redirection s'effectue automatiquement après 5 secondes.
Cependant, cette possibilité est à éviter, car l'utilisateur n'est pas prévenu qu'un tel mécanisme existe dans la page appelée, ce qui peut être troublant. De plus, cette méthode est déconseillée par le W3C.

Préférer une solution implémentée du côté serveur, le programme ou script serveur assurant lui-même la redirection vers la page voulue.
Sinon, la solution la plus simple consiste en un lien clairement visible dans la page. L'utilisateur déclenche alors lui-même la redirection en sachant ce qu'il fait.

Exemple de mauvaise pratique

Le code qui suit opère une redirection automatique dès le chargement de la page, ce qui interdit à l'utilisateur tout contrôle.

<meta http-equiv="refresh" content="5" url="http://www.le beaunouveausite.com" />

Exemple de bonne pratique

Voici quelques exemples des possibilités de redirection à implémenter côté serveur.

  1. Code Php de redirection : utilisation de la fonction "Header"

    <?PHP
    header("Status: 301 Moved Permanently");
    header("Location: http://www.le beau nouveau site.com/index.php");
    exit();
    ?>


    L'usage délicat de cette fonction en Php dépend des versions de Php et ne doit être précédé d'aucun code de sortie de données (tels echo, Print).
  2. Code Asp de redirection : utilisation de la fonction "AddHeader"

    <% response.status="301 moved permanently"
    response.addheader location, "http://www.lebeaunouveausite.com/nouveau.php"
    response.end %>

  3. Code Php de redirection : par appel d'un script distant

    //construction de la requête
    // L'url principale
    $requete = "http://www.le beau nouveausite.com/index.php?";
    // Les arguments si nécessaire
    $requete .= "id=".$id;
    // Exécution du script distant
    $connect = @file($requete); // exécution de la requête vers le serveur
    // Récupération des informations de la page appelée
    $resultat = trim($connect[0]);
    print($resultat);
    // Fin du script en cours
    exit;

revenir en haut de la page

Illustrations

Il n'y a pas d'illustration pour cette fiche.

revenir en haut de la page

Références

revenir en haut de la page


Fiche précédente : fiche du critère 13.1 Fiche suivante : fiche du critère 13.3

Guide AccessiWeb (version 3.1, 2 mars 2009) | Conditions d'utilisation | Contact
Copyright © 2009 Association BrailleNet. Tous droits Réservés.