TrueURL

Outil de redirection gratuit

Vérificateur de meta refresh

Toutes les redirections ne passent pas par un code de statut HTTP. TrueURL lit le code HTML de chaque page de la chaîne et repère les balises meta refresh et les redirections JavaScript, avec leur URL cible et leur délai.

Qu’est-ce qu’une redirection meta refresh ?

Une redirection meta refresh repose sur une balise HTML qui demande au navigateur de charger une autre URL après un délai exprimé en secondes :

<meta http-equiv="refresh" content="0; url=https://example.com/new-page">

Avec un délai de 0, elle se comporte comme une redirection classique. Avec un délai plus long, les visiteurs voient d’abord la page, comme sur les anciennes pages « Vous allez être redirigé… ». Les redirections JavaScript font la même chose avec du code comme location.href = '...' ou location.replace('...'). Dans les deux cas, il s’agit de redirections côté client : le serveur répond 200 OK et c’est le navigateur qui effectue la redirection.

Comment TrueURL détecte les redirections côté client

Pour chaque réponse HTML avec un code 2xx, TrueURL analyse les 256 premiers Ko de la page à la recherche d’une balise meta refresh et de redirections JavaScript simples et inconditionnelles. Un en-tête HTTP Refresh, qui fonctionne comme une balise meta refresh, est également détecté. Lorsqu’il détecte une redirection de ce type, il affiche la balise ou l’extrait de script, l’URL cible résolue et le délai, marque le saut comme meta refresh ou JavaScript, puis poursuit la chaîne à partir de la cible. Une actualisation qui recharge simplement la même page n’est pas une redirection : elle est ignorée.

Dans les Paramètres avancés, vous pouvez désactiver le suivi de l’un ou l’autre type pour examiner la page elle-même. TrueURL n’exécute pas le JavaScript : il lit les scripts de la page et reconnaît les redirections vers une URL fixe qui s’exécutent systématiquement au chargement de la page, immédiatement ou dans un setTimeout de premier niveau. Les redirections qui dépendent d’une condition, comme un clic, un choix de consentement ou la taille de l’écran, ou qui construisent l’URL cible dans le code, ne sont pas détectées. Utilisez GET plutôt que HEAD, car les réponses à une requête HEAD n’ont pas de corps à analyser.

Comment les moteurs de recherche traitent les redirections côté client

  • Redirection meta refresh instantanée (délai 0) : Google la traite comme une redirection permanente, à l’image d’une 301.
  • Redirection meta refresh différée : traitée comme une redirection temporaire, si bien que l’URL d’origine a tendance à rester indexée.
  • Redirections JavaScript : Google ne les voit qu’après avoir effectué le rendu de la page, ce qui peut se produire bien après l’exploration. Beaucoup d’autres robots d’exploration et la plupart des robots d’aperçu de liens n’exécutent pas du tout le JavaScript.

Google recommande les redirections côté serveur partout où vous pouvez les configurer, la balise meta refresh servant de solution de repli, par exemple sur un hébergement statique qui ne permet pas d’envoyer une 301.

Accessibilité et expérience utilisateur

Les redirections temporisées posent un problème d’accessibilité : les personnes qui utilisent un lecteur d’écran, ou qui lisent tout simplement lentement, perdent le fil lorsque la page change de manière inattendue. Les WCAG classent une redirection meta refresh temporisée parmi les échecs (F40), tandis qu’une redirection instantanée avec un délai de 0 est une technique admise (H76).

Si vous devez rediriger en HTML, utilisez un délai de 0, ajoutez une balise canonical pointant vers la nouvelle URL et incluez dans la page un lien visible vers celle-ci, pour les visiteurs dont le navigateur ne suit pas la redirection.

Guides

Questions fréquentes

Une redirection meta refresh transmet-elle la valeur SEO comme une 301 ?

Google traite une redirection meta refresh instantanée (délai 0) comme une redirection permanente : en pratique, elle fonctionne donc à peu près comme une 301. Une redirection différée est considérée comme temporaire. D’autres robots d’exploration peuvent gérer les redirections meta refresh de façon moins fiable : utilisez une 301 côté serveur dès que votre hébergement le permet.

Pourquoi mon vérificateur de redirections affiche-t-il 200 alors que la page redirige dans mon navigateur ?

La redirection a lieu dans le code HTML ou JavaScript de la page, et non dans la réponse HTTP. Les outils qui ne suivent que les codes de statut, comme curl -L, s’arrêtent sur la page en 200. TrueURL analyse le contenu de la page et affiche la redirection côté client comme un saut à part entière.

Quel délai choisir pour une redirection meta refresh ?

0, si le but est de rediriger. Tout délai en fait une redirection temporaire aux yeux de Google, fait attendre les visiteurs et pose des problèmes d’accessibilité. Un délai n’a de sens que sur une page qui doit d’abord afficher un message, et cette page doit aussi proposer un lien clair pour continuer.

TrueURL peut-il détecter toutes les redirections JavaScript ?

Non, seulement les redirections simples et inconditionnelles vers une URL cible fixe présente dans le code HTML de la page, comme location.href = '...', window.location = '...' ou location.replace('...'), y compris dans un setTimeout de premier niveau. Les redirections placées dans des fichiers de script externes, soumises à des conditions, déclenchées par une action de l’utilisateur ou utilisant une URL calculée ont besoin d’un vrai navigateur pour s’exécuter. Si la chaîne s’arrête sur une page dont vous savez qu’elle redirige, c’est probablement pour cette raison.

Pourquoi un site utiliserait-il une redirection meta refresh plutôt qu’une 301 ?

Généralement parce qu’il ne peut pas envoyer de redirections HTTP : hébergement statique sans règles de redirection, outil de création de pages ou ancien CMS. Certains raccourcisseurs de liens et outils de suivi des clics utilisent aussi des redirections HTML pour pouvoir exécuter d’abord des scripts d’analyse d’audience ou contrôler le référent que voit la destination.

Une requête HEAD permet-elle de détecter une redirection meta refresh ?

Non. Une réponse à une requête HEAD contient des en-têtes mais pas de corps : il n’y a donc aucun code HTML à analyser. TrueURL vous avertit lorsque vous lancez une vérification avec HEAD ; utilisez GET pour cet outil.