[PHP] Redirection via header()


dorian53
WRInaute passionné
WRInaute passionné
 
Messages: 2217
Inscription: 10 Avr 2005

[PHP] Redirection via header()

Message le Ven Mar 27, 2009 15:26

Bonjour,

Lorsque l'on souhaite rediriger un visiteur vers une page après une action, par exemple après le remplissage d'un formulaire valide, on utilise généralement :
Code: Tout sélectionner
<?php
header("Location: http://www.example.com/"); /* Redirection du navigateur */
exit;
?>


Et d'après la documentation PHP :
Le deuxième type d'appel spécial est "Location:". Non seulement il renvoie un en-tête au client, mais, en plus, il envoie un statut REDIRECT (302) à Apache. Du point de vue de l'auteur de script, cela importe peu, mais pour ceux qui connaissent les rouages internes d'Apache, c'est primordial.


Hors si l'on interprète le code 302, il signifie :
302 - Moved Temporarily - Document déplacé de façon temporaire



Ce code 302 est-il pertinent ?
Dans cette situation, il n'y a en effet aucun document déplacé.
Le 303 ne serait-il pas plus approprié ?
303 - See Other - La réponse à cette requête est ailleurs

Qu'en pensez-vous ?


dorian53
WRInaute passionné
WRInaute passionné
 
Messages: 2217
Inscription: 10 Avr 2005

Re: [PHP] Redirection via header()

Message le Ven Mar 27, 2009 15:52

On m'a répondu :

C'est d'autant plus subtile que ca a changé

302 "Found" indique que l'adresse demandée est bonne mais que pour le moment, il est demandé d'aller ailleurs.
307 "Temporary Redirect" indique la reponse est sur une autre page, la requete est donc répétée.
303 "See other" repete egalement la requete mais en convertissant en GET.

Dans notre cas c'est bien 302, la requête a bien été traité mais on nous demande d'aller voir ailleurs maintenant.


e-kiwi
Modérateur
Modérateur
 
Messages: 15618
Inscription: 23 Déc 2003

Re: [PHP] Redirection via header()

Message le Ven Mar 27, 2009 16:47

après validation de formulaire ce n'est pas très grave pour le référencement Google

mais sinon lorsque tu redirige, tu dois spécifier le type :

header("Status: 301 Moved Permanently");
header("location: ...");


petitchevalroux
WRInaute discret
WRInaute discret
 
Messages: 190
Inscription: 31 Mai 2006

Re: [PHP] Redirection via header()

Message le Ven Mar 27, 2009 16:53

e-kiwi a écrit:après validation de formulaire ce n'est pas très grave pour le référencement Google
mais sinon lorsque tu redirige, tu dois spécifier le type :
header("Status: 301 Moved Permanently");
header("location: ...");

Je précise : quand tu rediriges de façon permanente la 301, par exemple quand ta page a changée de répertoire ou de manière globale d'url et que tu souhaites que google et les autres considèrent la nouvelles urls dans les SERPS.
Aprés dans le cas d'une transaction de formulaire 302,303,307 je pense que les navigateurs s'en tappent et les moteurs de recherche ne sont pas sensé passer par la donc souvent je ne met rien, après à toi de voir ;)
Dernière édition par petitchevalroux le Ven Mar 27, 2009 18:57, édité 1 fois.


jeanluc
WRInaute accro
WRInaute accro
 
Messages: 3062
Inscription: 3 Mai 2004

Re: [PHP] Redirection via header()

Message le Ven Mar 27, 2009 17:45

dorian53 a écrit:Lorsque l'on souhaite rediriger un visiteur vers une page après une action, par exemple après le remplissage d'un formulaire valide, on utilise généralement : (...)
Les robots ne remplissant pas les formulaires (en principe), la question est purement théorique. :wink:

Jean-Luc


dorian53
WRInaute passionné
WRInaute passionné
 
Messages: 2217
Inscription: 10 Avr 2005

Re: [PHP] Redirection via header()

Message le Ven Mar 27, 2009 19:51

Oui à toutes vos remarques, merci.

C'est mon côté perfectionniste qui me pousse à poser ce genre de question.
J'aime faire les choses bien, comprendre : pourquoi, comment...

Néanmoins attention même si cette question était hors sujet vis à vis du référencement, Google commence à remplir les formulaires l'article est passé ici :
http://www.webrankinfo.com/actualites/200804-indexation-des-formulaires.htm


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités