Redirection php (fonction header) et indexation

Consultez la formation à Google Analytics de WebRankInfo / Ranking Metrics

Kaledonie
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 161
Inscription: Lun Aoû 11, 2003 16:31

Redirection php (fonction header) et indexation

Message le Mar Aoû 19, 2003 9:34

Bonjour,

Dans mon annuaire, lorsqu'un internaute clique sur un site, il ouvre une page php qui met à jour la base puis utilise la fonction header :

Code: Tout sélectionner
@header("Location: $url");


D'abord, je ne comprend pas pourquoi googleboot n'a pas indexé ces pages.
Est-ce parce qu'il considère que ces pages n'existent pas ?
Le lien avec le site est il valable pour notre ami ?

Ensuite, j'aimerais optimiser ce code afin que les liens soient le plus efficace possible :
- pourquoi le @ devant header ?
- Mirgolth rajoute une spécification d'en-tête HTTP. quel en est l'intéret ?
- Enfin, le titre de ma page pendant un moment est du type out.php?site=456
J'ai trouvé ici, en fin de page une "astuce".

Le code deviendrait

Code: Tout sélectionner
  header("Request-URI: $url");
  header("Content-Location: $url");
  header("Location: $url",301);


Qu'en pensez vous ?
Dernière édition par Kaledonie le Mar Aoû 19, 2003 12:23, édité 1 fois.

Mirgolth
WRInaute passionné
WRInaute passionné
 
Messages: 622
Inscription: Lun Oct 14, 2002 11:25

Re: Redirection php (fonction header) et indexation

Message le Mar Aoû 19, 2003 11:43

Salut,

Kaledonie a écrit:D'abord, je ne comprend pas pourquoi googleboot n'a pas indexé ces pages.
Est-ce parce qu'il considère que ces pages n'existent pas ?
Le lien avec le site est il valable pour notre ami ?

De quelles pages parles tu ?

- Les pages qui redirigent ne seront pas indexées. Elle n'ont aucun contenu.
- Les pages vers lesquelles tu rediriges seront elles indexées.

Les redirections sont comtée comme des liens et apparaissent comme backlink pour peu que le liens soit bien fait ( pas de variable id...).

Kaledonie a écrit:- pourquoi le @ devant header ?

@ indique à l'interpreteur ne ne pas afficher d'erreur qui pourrait empècher l'envoir correct du header HTTP. Utile sur des fonctions avant header() ( include par exemple ) cette sécurité me semble inutile sur header() car s'il devait générer une erreur/un warning c'est que de toutes mainière la redirection ne ce ferait pas

Kaledonie a écrit:- Mirgolth rajoute une spécification d'en-tête HTTP. quel en est l'intéret ?

Par défaut la fonction header() envoie un entête de redirection temporaire (302) au lieu de permanente (301) il faut donc lui préciser explicitement d'envoyer une redirection 301.
Avec une 301 Google, mettra à jour l'URL de l'index pas avec une 302.

Kaledonie a écrit:- Enfin, le titre de ma page pendant un moment est du type out.php?site=456
J'ai trouvé ici, en fin de page une "astuce".

Le code deviendrait

Code: Tout sélectionner
header("Request-URI: $url");
  header("Content-Location: $url");
  header("Location: $url",301);


Qu'en pensez vous ?

Je veux bien une explication des 2 premières lignes que même avec la spec HTTP1.1 devant les yeux je ne comprend pas .

Je rappelle pour les nouveaux et les visiteurs : La Synthese sur les redirections

Mirgolth

PS: pour le code, il n'y a pas de ="code",c'est juste:
Code: Tout sélectionner
[code][/code]

Kaledonie
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 161
Inscription: Lun Aoû 11, 2003 16:31

Message le Mar Aoû 19, 2003 12:22

Ben, euh, moi aussi :o

Voici la présentation de la fonction header (en Français)
http://www.php.net/manual/fr/function.header.php
qui renvoie à la spec HTTP 1.1, en anglais

Ici est expliqué en français ( :?: ) à quoi sert Content-Location
http://www.lirmm.fr/~ajm/Cours/01-02/DE ... ochttp.htm
(en-tête de l'entité) sert à préciser la vraie URI de la ressource renvoyée si la ressource renvoyée a été trouvée à une autre URI que celle de la requête

'comprend rien 8O

Et là est expliqué ( :!: ) request-URI :
http://www2.univ-reunion.fr/~jclain/cours/http/all.html
request-URI identifie la ressource sur le serveur. Il s'agit de la partie qui est placée après le nom d'hôte dans l'URL.


:?:

PS: ah, il y a Quote et Code, 'faut q'j'm'achete des lunettes :roll:

Kaledonie
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 161
Inscription: Lun Aoû 11, 2003 16:31

Message le Mar Aoû 19, 2003 18:54

Ouais, ben, pas la peine de se poser la question :

Ca marche pas lol

avec
Code: Tout sélectionner
  header("Request-URI: $url");
  header("Content-Location: $url");


Ou sans, ça fait rien du tout, enfin, du moins, je vois rien de mieux :cry:

Merci Mirgolth,

arsonik
Nouveau WRInaute
 
Messages: 2
Inscription: Lun Aoû 25, 2003 23:01

Message le Jeu Oct 21, 2004 13:39

quand tu faire un

header("Location: /blabla.html");
exit;

ca envoi au client (robot ou non) :

(Response Status) HTTP/1.1 302 Found
Connection Keep-Alive
Content-Type text/html
Date Thu, 21 Oct 2004 12:19:09 GMT
Keep-Alive timeout=15, max=150
Location /blabla.html
Server Apache/1.3.31 (Unix) mod_ssl/2.8.19 OpenSSL/0.9.6c PHP/4.3.9
Transfer-Encoding chunked
X-Powered-By PHP/4.3.9

avec bien sur des variables qui diffèrent suivant le serveur ;)
Tout ca pour dire que Google entre autre va interpreter que la page actuelle
n'a pu lieu d'être à cause du code 302 retourné donc il ne va normalement plus indexer la page sur laquelle tu fait ton header location mais blabla.html


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 Related Links

  • Test de lien (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).
  • Test HTTP header
    Cet outil vous permet de connaître le code HTTP renvoyé par le serveur pour une page donnée.
  • Déterminer l'ancienneté d'un site
    Cet outil vous permet de connaître une estimation de l'ancienneté d'un site : il fournit la date à laquelle Google l'a indexé la première fois (et la même chose pour archive.org).


Qui est en ligne

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