Redirection 307
Une redirection 307 est un code de statut HTTP (307 Temporary Redirect) qui indique aux navigateurs et aux moteurs de recherche qu'une URL a été déplacée de façon temporaire vers une adresse différente. Elle est similaire à une redirection 302, mais avec une distinction essentielle : la méthode HTTP d'origine (GET, POST, etc.) et le corps de la requête doivent être préservés à l'identique lors du suivi de la redirection.
Une redirection 307 est un code de statut HTTP (307 Temporary Redirect) qui indique aux navigateurs et aux moteurs de recherche qu'une URL a été déplacée de façon temporaire vers une adresse différente. Elle est similaire à une redirection 302, mais avec une distinction essentielle : la méthode HTTP d'origine (GET, POST, etc.) et le corps de la requête doivent être préservés à l'identique lors du suivi de la redirection.
Pourquoi c'est important
Comme une redirection 307 signale clairement un déplacement temporaire tout en préservant la méthode de requête, elle évite la perte de données dans les scénarios impliquant des soumissions de formulaires POST ou des appels d'API. Lorsque les moteurs de recherche reçoivent une réponse 307, ils conservent l'URL d'origine dans leur index et ne transfèrent pas le link equity vers la nouvelle URL. Cela signifie que la valeur SEO de l'URL d'origine reste entièrement intacte une fois la redirection temporaire supprimée. Cependant, maintenir une redirection 307 pendant une période prolongée oblige les moteurs de recherche à visiter à plusieurs reprises l'URL d'origine, gaspillant le budget de crawl. Si une situation temporaire est devenue permanente, il est recommandé de passer à une redirection 301 ou 308.
Différence avec la 302
| Attribut | 307 (Temporary Redirect) | 302 (Found) |
|---|---|---|
| Préservation de la méthode HTTP | Strictement préservée (POST reste POST) | La méthode peut changer (POST peut devenir GET) |
| Définition standard | Clairement définie dans HTTP/1.1 | Existe depuis HTTP/1.0 mais la gestion de la méthode est ambiguë |
| Index de recherche | URL d'origine conservée | URL d'origine conservée |
| Transfert du link equity | Non transféré | Non transféré |
| Cas d'usage principal | Déplacements temporaires nécessitant la préservation de POST | Déplacements temporaires courants |
Le code de statut 302 présente une ambiguïté historique : selon les anciennes normes, certains navigateurs convertissaient les requêtes POST en GET lors du suivi d'une 302. Le code 307 a été introduit dans la spécification HTTP/1.1 pour éliminer cette ambiguïté. Lorsque les données POST ne doivent pas être perdues, la 307 est un choix plus sûr que la 302.
Cas d'usage
- Maintenance de serveur : lorsque le trafic doit être temporairement acheminé vers un autre serveur ou une page de maintenance, une redirection 307 garantit un retour fluide à l'URL d'origine une fois la maintenance terminée.
- Tests A/B : envoyer temporairement une partie des utilisateurs vers une version différente d'une page tout en préservant le classement de l'URL d'origine dans les résultats de recherche.
- HSTS (HTTP Strict Transport Security) : les navigateurs utilisent un code de statut 307 en interne lorsqu'ils redirigent les requêtes HTTP vers HTTPS. Il s'agit d'un comportement au niveau du navigateur qui ne nécessite pas de configuration serveur distincte.
- Migration temporaire d'un point de terminaison POST : lorsque des soumissions de formulaires ou des demandes de traitement de paiement qui doivent conserver la méthode POST doivent être temporairement transférées vers un point de terminaison différent, une redirection 307 est essentielle.
Sources :
Articles inblog associés
Comment inblog vous aide
Le tableau de bord d'inblog utilise des codes de statut 307 pour les redirections temporaires.