Redirection 301 incluse dans une 404 ?

Consultez la formation à Google Analytics de WebRankInfo / Ranking Metrics


jeanluc
WRInaute accro
WRInaute accro
 
Messages: 2662
Inscription: Lun Mai 03, 2004 14:48

Message le Sam Mai 27, 2006 14:07

Bonjour Jul-Wup,

Ça ne peut pas marcher parce qu'une URL ne renvoie jamais qu'un seul code. Donc si l'URL demandée renvoie un code 404, elle ne peut pas envoyer un 301.

Code: Tout sélectionner
ErrorDocument 404 /404.php
n'est pas une redirection. Cela fonctionne plutôt comme si c'était un include. Il y a l'envoi du code 404 à ce niveau, mais aucune redirection.

Si tu doutes, vérifie avec un outil de test d'en-tête HTTP.

Jean-Luc

Jul-Wup
WRInaute discret
WRInaute discret
 
Messages: 96
Inscription: Mar Déc 13, 2005 10:47

Message le Sam Mai 27, 2006 14:50

jeanluc a écrit:Ça ne peut pas marcher parce qu'une URL ne renvoie jamais qu'un seul code. Donc si l'URL demandée renvoie un code 404, elle ne peut pas envoyer un 301.


Ben écoute, chez moi, ça affiche bien le referer.
Je viens de faire le test en local.
A vérifier sous Free :wink:


jeanluc
WRInaute accro
WRInaute accro
 
Messages: 2662
Inscription: Lun Mai 03, 2004 14:48

Message le Sam Mai 27, 2006 15:12

Si la redirection est suivie, c'est qu'aucun code 404 n'a été envoyé. Si tu mets ça en ligne, tu pourras vérifier avec un outil de test d'en-tête HTTP. :wink:

Jean-Luc

Jul-Wup
WRInaute discret
WRInaute discret
 
Messages: 96
Inscription: Mar Déc 13, 2005 10:47

Message le Sam Mai 27, 2006 15:20

jeanluc a écrit:Si la redirection est suivie, c'est qu'aucun code 404 n'a été envoyé. Si tu mets ça en ligne, tu pourras vérifier avec un outil de test d'en-tête HTTP. :wink:

Jean-Luc


Tu as un exemple sous la main stp? Je suis perplexe. 8O

J'ai fais le test avec une page index.php
Code: Tout sélectionner
<?php
echo $_SERVER['HTTP_REFERER'];
?>
<a href="index.php">Index</a>
<a href="ex.php">Ex</a>


et une page 404.php
Code: Tout sélectionner
<?php
echo $_SERVER['HTTP_REFERER'];
?>


et le htaccess et ça me renvoit le referer. Bien sûr, ex.php n'existe pas.

RG
WRInaute discret
WRInaute discret
 
Messages: 68
Inscription: Lun Aoû 04, 2003 18:45

Message le Sam Mai 27, 2006 15:38

Jul-Wup a écrit:Free n'accepte l'url rewriting donc ça bloquera et fera une 500 selon toute probabilité.


Ah si si ça marche impec :)
Toutes mes pages sont renvoyées vers l'URL. J'imagine que Yahoo saura interpréter ça correctement :)

Je suis lancé dedans donc je vais persévérer :)


jeanluc
WRInaute accro
WRInaute accro
 
Messages: 2662
Inscription: Lun Mai 03, 2004 14:48

Message le Sam Mai 27, 2006 15:41

Jul-Wup a écrit:Tu as un exemple sous la main stp? Je suis perplexe. 8O
Je n'ai pas d'exemple sous la main.

Pourrais-tu examiner le fichier log de ton serveur local ? Je serais étonné que tu y trouves un code 404, immédiatement suivi d'un code 301. Tu peux peut-être faire un copier/coller de quelques lignes de ton fichier log.

Jean-Luc

Jul-Wup
WRInaute discret
WRInaute discret
 
Messages: 96
Inscription: Mar Déc 13, 2005 10:47

Message le Sam Mai 27, 2006 16:23

RG, ça a bien changé depuis que je ne suis plus là bas. Tant mieux ceci dit.


jeanluc a écrit:
Jul-Wup a écrit:Tu as un exemple sous la main stp? Je suis perplexe. 8O
Je n'ai pas d'exemple sous la main.

Pourrais-tu examiner le fichier log de ton serveur local ? Je serais étonné que tu y trouves un code 404, immédiatement suivi d'un code 301. Tu peux peut-être faire un copier/coller de quelques lignes de ton fichier log.

Jean-Luc


J'ai ça dans le fichier logs.
Code: Tout sélectionner
127.0.0.1 - - [27/May/2006:17:21:25 +0200] "GET / HTTP/1.1" 200 3560
127.0.0.1 - - [27/May/2006:17:21:28 +0200] "GET /Essai/ HTTP/1.1" 200 1784
127.0.0.1 - - [27/May/2006:17:21:29 +0200] "GET /Essai/WRI/ HTTP/1.1" 200 91
127.0.0.1 - - [27/May/2006:17:21:32 +0200] "GET /Essai/WRI/ex.php HTTP/1.1" 302 329
127.0.0.1 - - [27/May/2006:17:21:32 +0200] "GET /Essai/WRI/404.php HTTP/1.1" 200 39


Apparemment, il me fait une 302?? 8O (le chiffre après le 302, le 200,c'est quoi?)


jeanluc
WRInaute accro
WRInaute accro
 
Messages: 2662
Inscription: Lun Mai 03, 2004 14:48

Message le Sam Mai 27, 2006 16:39

Quand tu demandes ex.php, le serveur répond par le code 302, c'est-à-dire qu'il demande à ton navigateur d'aller voir à l'adresse de redirection 404.php.

Puis, quand ton navigateur demande 404.php, le serveur répond par le code 200, c'est-à-dire qu'il a trouvé la page et il l'affiche.

C'est plus ou moins ce que j'attendais, sauf que je ne vois aucune trace de la redirection 301 de 404.php vers l'adresse du referrer (pourtant tu disais qu'il suivait cette redirection; on dirait que ta redirection 301 ne marche pas). D'après l'extrait du fichier log, finalement c'est 404.php qui s'affiche dans la barre d'adresse du navigateur; je suppose que c'est ce que tu constates.

Jean-Luc

Jul-Wup
WRInaute discret
WRInaute discret
 
Messages: 96
Inscription: Mar Déc 13, 2005 10:47

Message le Sam Mai 27, 2006 16:54

jeanluc a écrit:on dirait que ta redirection 301 ne marche pas

je n'ai pas fait de 301. J'ai juste affiché le referer sur la page 404.php. Et c'est le cas. Si cela marche en local, pourquoi cela ne fonctionnerait-il pas sur Free? :roll:
Auquel cas une 301 sur cette 404.php vers le site final fonctionnerait. J'ai manqué une étape? 8O


jeanluc
WRInaute accro
WRInaute accro
 
Messages: 2662
Inscription: Lun Mai 03, 2004 14:48

Message le Sam Mai 27, 2006 17:10

En fait, quand tu auras installé ta redirection 301, tu vas commencer par envoyer une redirection 302 et la faire suivre par une redirection 301, comme ceci:

ex.php => 302 => 404.php => 301 => adresse_finale.php

Donc, tu n'envoies jamais de code 404 (page n'existe plus). Tu dis plutôt aux visiteurs que la page a changé d'adresse. En soi, c'est une bonne solution, mais tu le fais de façon compliquée puisqu'il y a deux redirections différentes pour arriver à la bonne nouvelle adresse. Peut-être que les robots de Google et Yahoo s'y retrouveront, mais c'est quand même risqué.

Jean-Luc

Jul-Wup
WRInaute discret
WRInaute discret
 
Messages: 96
Inscription: Mar Déc 13, 2005 10:47

Message le Sam Mai 27, 2006 17:25

jeanluc a écrit:Tu dis plutôt aux visiteurs que la page a changé d'adresse. En soi, c'est une bonne solution, mais tu le fais de façon compliquée puisqu'il y a deux redirections différentes pour arriver à la bonne nouvelle adresse.


Ok, je comprends ce que tu veux dire. :wink:
A voir si le risque est pris pour le cas initial donc.

Redirection 301 incluse dans une 404 ?

Formation recommandée sur ce thème :

Formation Google Analytics : en 2 jours, apprenez comment exploiter l'essentiel des possibilités de l'outil de mesure d'audience de Google. Formation animée par Julien Coquet, expert certifié officiellement par Google Analytics.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :

Consultez la description détaillée des produits ou services de Google suivants : Google Video Store

  • Tester le type de redirection
    Cet outil vous permet de tester la validité d'un lien pour le référencement. Il vous indique la nature du lien (lien en dur, redirection bien gérée par les moteurs ou redirection mal gérée par les moteurs).
  • Analyse de l'entête HTTP
    Cet outil vous permet de connaître le code HTTP renvoyé par le serveur pour une page donnée.


Qui est en ligne

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