301 Moved Permanently signifie que la ressource a été déplacée définitivement vers une nouvelle URL. Les moteurs de recherche captent ce signal et transfèrent le classement et la valeur des liens de l'ancienne URL vers la nouvelle. À utiliser pour les déplacements que vous ne reviendrez pas dessus, comme une migration de domaine ou le passage de HTTP à HTTPS.
302 Found est un déplacement temporaire. L'URL d'origine reste valide, donc les moteurs de recherche ne transfèrent pas le classement. Cela convient aux situations qui reviendront bientôt à la normale, comme une déviation temporaire vers une page de maintenance ou une redirection après connexion.
Un point d'attention est la préservation de la méthode. Historiquement, les navigateurs changeaient parfois POST en GET avec 301 et 302. Si vous devez conserver la méthode, utilisez 308 pour un déplacement permanent et 307 pour un déplacement temporaire, et utilisez 303 See Other pour envoyer l'utilisateur vers une page de résultat après un POST.