Peut on detecter la redirection 301 ?

Consultez la formation sur les stratégies de liens de WebRankInfo / Ranking Metrics

jboor
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 351
Inscription: 20 Aoû 2005

Peut on detecter la redirection 301 ?

Message le Sam Sep 08, 2007 13:40

Bonjour,

Est ce qu'il y a une façon pour détecter une redirection 301 vers ma page

je veux paramétrer ma page pour qu'elle affiche un message lorsque le visiteur y est tombé à partir d'une redirection 301

merci d'avance

Koxin-L
WRInaute passionné
WRInaute passionné
 
Messages: 1925
Inscription: 29 Mar 2007

Message le Sam Sep 08, 2007 14:14

// Fonction récupération code statut HTTP
function getHTTPHeaders($url)
{
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HEADER, 1); // Inclure l'entête HTTP
curl_setopt($ch, CURLOPT_NOBODY, 1); // Ne pas télécharger le corps
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // Ne pas afficher, mais retourner le résultat de curl_exec
return split("\n",curl_exec($ch));
}

jboor
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 351
Inscription: 20 Aoû 2005

Message le Sam Sep 08, 2007 14:52

est ce que ça fonctionne si la redirection est faite avec .htaccess


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

Re: Peut on detecter la redirection 301 ?

Message le Sam Sep 08, 2007 15:06

jboor a écrit:je veux paramétrer ma page pour qu'elle affiche un message lorsque le visiteur y est tombé à partir d'une redirection 301
Il n'existe aucun moyen pour savoir si ton visiteur arrive via une redirection, que ce soit une 301 ou une autre (sauf évidemment si c'est ton propre serveur qui fait la redirection).

La raison en est que toutes les redirections sont traitées par le navigateur, même celles que certains appellent "redirections serveur".

Il n'est même pas possible d'utiliser le status HTTP, ni le referrer. Par exemple, si j'ai la pageA avec un lien vers URL1 qui fait une redirection vers URL2, alors on aura :
1. sur le serveur où se trouve URL1:
- status HTTP: 301
- referrer : pageA
2. sur le serveur où se trouve URL2:
- status HTTP: 200
- referrer : pageA

Finalement si tu veux absolument identifier les 301, il faudrait crawler toutes les pages-referrers et analyser le code pour voir s'il renvoie directement vers ta page ou via une redirection et puis voir si cette redirection est une 301. Ce serait plutôt "sportif"... :wink: Ce serait seulement à partir de cette liste de referrers que tu pourrais alors décider du contenu à afficher...

Jean-Luc
Dernière édition par jeanluc le Sam Sep 08, 2007 15:09, édité 1 fois.

jboor
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 351
Inscription: 20 Aoû 2005

Message le Sam Sep 08, 2007 15:09

Vrai :wink: aucune solution

Koxin-L
WRInaute passionné
WRInaute passionné
 
Messages: 1925
Inscription: 29 Mar 2007

Message le Sam Sep 08, 2007 16:44

Essaye le code que je t'ai filé qui fonctionne très bien vu que je m'en sert pour contrôler les sites qui s'inscrivent sur mon annuaire, ainsi, je n'autorise que les 200 et 301.

Je ne sais pas ou vous cherchez qu'on ne peut pas savoir le code http d'une URL...


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

Message le Sam Sep 08, 2007 16:51

Savoir si un lien sur ton site fait une redirection est une chose; savoir si un visiteur qui arrive sur ton site a suivi une redirection est autre chose. 8)

Jean-Luc

Koxin-L
WRInaute passionné
WRInaute passionné
 
Messages: 1925
Inscription: 29 Mar 2007

Message le Sam Sep 08, 2007 18:28

Mais dans ce cas là, il est facile de récupéré le referer et de regarder ce qu'il se passe.

Example, l'annuaire -http://www.aixplorer.com/

envoi un visiteur vers ton site en passant par l'url -http://www.aixplorer.com/goto.php?id=230

Pour toi, le referer, c'est -http://www.aixplorer.com/goto.php?id=230, et en test http, iol donne 302 :wink:
Dernière édition par Koxin-L le Dim Sep 09, 2007 15:07, édité 1 fois.

jboor
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 351
Inscription: 20 Aoû 2005

Message le Sam Sep 08, 2007 19:10

ça c'est le plus simple. mais la redirection 301 et encore avec .htaccess n'est pas détectable à mon avis


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

Message le Sam Sep 08, 2007 19:16

Koxin-L a écrit:Mais dans ce cas là, il est facile de récupéré le referer et de regarder ce qu'il se passe.
Facile ? facile ?

Pour chaque referrer, il faut examiner la page, trouver le lien qui lie vers ta page et puis tester s'il est direct ou s'il fait une redirection et laquelle. Oui, c'est faisable...

Jean-Luc


Tong
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 30
Inscription: 27 Avr 2007

Message le Dim Mar 16, 2008 12:42

Désolé, je déterre ce sujet auquel j'aimerais trouver une solution.

Au final, on peut donc récupérer le referer et analyser son status ?

Si il y a redirection, le referer devrait alors être la page de redirection, et il n'y aurait plus qu'a analyser les entêtes de cette page, avec curl par exemple ?

Si certains veulent bien me dire si j'ai bon ou non, ca serait cool ;)


salva
WRInaute accro
WRInaute accro
 
Messages: 4105
Inscription: 16 Avr 2006

Re: Peut on detecter la redirection 301 ?

Message le Lun Nov 08, 2010 11:01

Bonjour,

Petit déterrage de topic qui résume bien mon besoin.
jboor a écrit:je veux paramétrer ma page pour qu'elle affiche un message lorsque le visiteur y est tombé à partir d'une redirection 301


jeanluc a écrit:Il n'existe aucun moyen pour savoir si ton visiteur arrive via une redirection, que ce soit une 301 ou une autre (sauf évidemment si c'est ton propre serveur qui fait la redirection).

La redirection est effectuée par mon propre serveur et la fonction présentée par Koxin-L me semble toute indiquée.
Koxin-L a écrit:
// Fonction récupération code statut HTTP
function getHTTPHeaders($url)
{
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HEADER, 1); // Inclure l'entête HTTP
curl_setopt($ch, CURLOPT_NOBODY, 1); // Ne pas télécharger le corps
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // Ne pas afficher, mais retourner le résultat de curl_exec
return split("\n",curl_exec($ch));
}


Mon niveau PHP étant limité, je ne sais pas écrire la condition qui m’affichera ou non le message souhaité.

Un motivé dans la salle ?
Merci.


Leonick
WRInaute accro
WRInaute accro
 
Messages: 18833
Inscription: 8 Aoû 2004

Re: Peut on detecter la redirection 301 ?

Message le Lun Nov 08, 2010 11:09

la fonction présentée par Koxin-L ne se place pas du côté visiteur, vu l'appel à curl. En fait, elle vérifie si une url fait une redirection.


salva
WRInaute accro
WRInaute accro
 
Messages: 4105
Inscription: 16 Avr 2006

Re: Peut on detecter la redirection 301 ?

Message le Lun Nov 08, 2010 11:15

C'est ce que je souhaite : savoir si le visiteur est amené sur la page qu'il est en train de consulter par une 301 (interne) et si c'est bien le cas, afficher un message.


Leonick
WRInaute accro
WRInaute accro
 
Messages: 18833
Inscription: 8 Aoû 2004

Re: Peut on detecter la redirection 301 ?

Message le Lun Nov 08, 2010 11:44

oui, mais tu ne comprends pas que ce script vérifie si l'url A est redirigé, de façon externe. Alors que toi tu veux savoir si un internaute sur l'url B provient d'une redirection de A.
Si c'est une redirection définie dans ton htaccess, la solution serait d'ajouter un paramètre à la redirection, mais le problème, c'est qu'elle apparaitrait dans ta redirection visible.
Si c'est hors htaccess, utilise une variable session

Peut on detecter la redirection 301 ?

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

Formation recommandée sur ce thème :

Formation Netlinking (liens et référencement) : apprenez ce qu'est réellement un bon lien pour le référencement et surtout comment en obtenir. Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

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

Lectures recommandées sur ce thème :

  • Tester la validité d'un lien
    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).
  • Similarité et duplicate content
    Cet outil vous permet de calculer la similarité entre 2 pages web. L'algorithme utilisé repose sur l'analyse des occurrences des mots (mais pas sur leur positionnement dans les pages). Google utilise cette notion à certains endroits dans son algorithme, mais de façon bien plus évoluée que ce petit outil... Avoir des pages trop similaires peut entraîner des problèmes d'indexation... Cet outil vous permettra peut-être de résoudre certains problèmes de contenus dupliqués.
  • Test du code HTTP d'une page
    Cet outil vous permet de connaître le code HTTP renvoyé par le serveur pour une page donnée.
  • Suggestions de mots-clés
    Cet outil vous fournit une liste de mots sémantiquement proches du mot que vous fournissez en entrée. Il peut servir à vous donner des idées de mots à utiliser sur vos pages, voire de contenus à ajouter.


Qui est en ligne

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