Poppy Posté 12 Septembre 2005 Posté 12 Septembre 2005 Bonjour, J'aimerai connaitre la différence entre: header("Status: 301 Moved Permanently");header("Location: http://mydir.celeonet.fr");exit(); et header("Location: http://mydir.celeonet.fr");exit(); Les 2 marchent, mais à quoi sert le status ? Merci pour vos réponses
Jeanluc Posté 12 Septembre 2005 Posté 12 Septembre 2005 Bonjour, Le premier fait une redirection 301, le second une redirection 302. Redirection 301 : le serveur dit au navigateur (ou au robot) qui le visite que la redirection est permanente et définitive et lui conseille d'oublier l'ancienne adresse et de la remplacer par la nouvelle (important pour les moteurs de recherche) Redirection 302 : le serveur dit au navigateur (ou au robot) qui le visite que la redirection pourrait être temporaire. Il ne lui conseille pas d'oublier l'ancienne adresse (ce qui va faire que Google et certains autres moteurs vont peut-être se mêler les pinceaux entre les deux adresses; un moteur de recherche bien programmé comme Yahoo n'a pas ce problème) Jean-Luc
Poppy Posté 12 Septembre 2005 Auteur Posté 12 Septembre 2005 (modifié) Super, merci pour l'explication ! Et ça, c'est bon ? header("Location: [url=http://mydir.celeonet.fr"]http://mydir.celeonet.fr"[/url], 301);header("Location: [url=http://mydir.celeonet.fr"]http://mydir.celeonet.fr"[/url], 302); Là, c'est plutôt à propos de la synthaxe mon interrogation Modifié 12 Septembre 2005 par Poppy
adn Posté 10 Décembre 2005 Posté 10 Décembre 2005 Bonjour, A propos de redirection, je fais des redirections de mon site vers d'autres sites et au passage je gère un compteur (c'est la raison de ce bout de code). Je la fais de la sorte : ...code php pour gérer mon compteur.... puis un echo de <meta http-equiv='Refresh' content='0;URL=".$url."'></HEAD> Est-ce une bonne manière de faire une redirection en php ?
Dan Posté 10 Décembre 2005 Posté 10 Décembre 2005 Est-ce une bonne manière de faire une redirection en php ? Je dirais sans hésiter: non ! Le problème des refresh à 0 secondes est que les moteurs n'aiment pas cela du tout. Normal parce que c'est le plus souvent utilisé pour des redirections trompeuses, ce que Google appelle une "deceptive redirect". Il vaut beaucoup mieux utiliser la fonction header() parce qu'au moins personne ne sait que tu fais une redirection. Dan
adn Posté 10 Décembre 2005 Posté 10 Décembre 2005 Merci Dan. J'ai modifié mon code. Par contre, au passage j'ai constaté que la function header() ne supportait pas les & Voici le code : ...compteur de clics...$url = html_entity_decode($url);$url = "Location: ".$url;header($url);
Dudu Posté 11 Décembre 2005 Posté 11 Décembre 2005 Salut, çà parait normal que PHP n'accepte pas une entité HTML qui sert à ce que les navigateurs ne se prennent pas les pieds dans le tapis entre les attributs id et les variables passées dans l'URL. Lorsque tu ne travailles qu'en PHP brut (c'est-à-dire que rien ne 'ressort' en HTML), c'est & tout court.
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant