Page 1 sur 1

pas de referer depuis Hotmail ou Gmail ?? comment font-ils ?

Posté : 15 déc. 2011, 13:15
par Jim125
Bonjour à tous,

J'ai développé mon module de stats en Php, et ce serait intéressant de savoir si certains de mes visiteurs accèdent à mon site
depuis leur boite e-mail. (ce qui veut dire que certains le recommandent par mail, c'est très positif.) j'utilise donc $_SERVER['HTTP_REFERER']

Après avoir placé un lien vers dans mon propre message dans ma boite hotmail et gmail, le referer est vide !! :shock:
j'ai fait le test avec des webmail moins connus, et le referer est bien présent.

Normalement, un site web ne peut pas avoir de contrôle sur le Navigateur. Alors comment Hotmail et Gmail ,
qui sont de simples sites web après tout, font-ils pour ne pas donner leur referer, comme tout le monde ?

Si ils ont un accord avec Firefox ou Internet Explorer, l'Internet n'est pas vraiment neutre, ni égalitaire.

Qu'en pensez-vous ? avez-vous testé ? (avec d'autres webmail et d'autres navigateurs peut-être ?)

Re: pas de referer depuis Hotmail ou Gmail ?? comment font-i

Posté : 15 déc. 2011, 14:33
par Skw33d
Salut,

Le referer est une entête de requête. Cet entête est donc spécifié par celui qui émet la requête. En l'occurrence quand toi tu visites un site, elle est spécifié par ton navigateur.
Mais imaginons que ce soit le serveur qui fasse la requête. Dans les emails, il remplace tous les liens par quelque chose du genre : http://msn.fr/hotmail/?goto=www.google.fr

Une page récupère cet variable $_GET['goto'] et génère une requête GET avec les entêtes qu'il aura précisé lui, donc il peut faire ce qu'il veut du referer.

Re: pas de referer depuis Hotmail ou Gmail ?? comment font-i

Posté : 15 déc. 2011, 14:55
par Mazarini
Bonjour,

Je me demande si un redirect ne fausse pas le referer.

Re: pas de referer depuis Hotmail ou Gmail ?? comment font-i

Posté : 15 déc. 2011, 20:21
par Jim125
Salut Skw33d, Mazarini,

Ce n'est pas un lien vers hotmail. c'est un lien que je mets dans mon propre e-mail , qui pointe vers mon site perso.
donc hotmail ne fait pas de requête. Quand je clique, je lance une requête vers le serveur de mon site perso.

comme tout webmaster, je récupère le referer avec $_SERVER['HTTP_REFERER']. ça marche à tous les coups bien sûr.

Mais pas ceux de Hotmail ni de Gmail. Logiquement, je devrais recevoir le referer, puisque c'est moi-même qui clique
et je n'ai bloqué le referer de mon navigateur. D'ailleurs je reçois le referer de n'importe quel site, sauf ces deux là.

Le site Hotmail ou Gmail ne peuvent pas faire de redirection de mon lien, puisque sa page est affichée. Si je clique, ça appelle la page située sur mon site.
Faîtes un test si vous voulez, vous verrez que vous ne recevrez pas le referer... bizarre non ?

Re: pas de referer depuis Hotmail ou Gmail ?? comment font-i

Posté : 15 déc. 2011, 20:34
par xTG
A mon avis il ont un script JS qui hook les clics sur lien et qui change dynamiquement le href pour rediriger vers un script à eux avant.
Ce qui fait que c'est le serveur qui fait la redirection après un traitement (sans doute de stats).

On peut le voir avec le moteur de recherche google quand tu as une connexion qui lag ou bien que leur serveur met un peu de temps.
Le lien dans la page de recherche est le lien final, mais on peut voir des fois après clic une page blanche avec une url du domaine google avec plein de paramètres et ensuite une redirection vers le lien sur lequel tu as cliqué.
Il y a fort à parier que sur messagerie il y ai le même fonctionnement.

Re: pas de referer depuis Hotmail ou Gmail ?? comment font-i

Posté : 15 déc. 2011, 20:57
par Skw33d
Effectivement c'est étonnant ! J'ai voulu tester ce que tu disais xTG, donc j'ai désactivé mon JavaScript et même en le désactivant, il n'y a pas de referer !

Re: pas de referer depuis Hotmail ou Gmail ?? comment font-i

Posté : 15 déc. 2011, 21:04
par Skw33d
Après quelques recherches, j'ai compris pourquoi. Lorsqu'un referer provient d'un site https celui ci est automatiquement supprimé.

Re: pas de referer depuis Hotmail ou Gmail ?? comment font-i

Posté : 15 déc. 2011, 22:03
par Jim125
merci de vos réponses. :wink:

Qui a décidé de supprimmer les referer d'un lien provenant d'un site https ? c'est dans les RFC ça ? :shock:
ou bien Firefox et IE changent eux-même les règles ?

Il y a quelques années, j'obtenais les referer de hotmail, mais je ne me souviens plus s'il était tout en https ou seulement la connexion.

Si on ne peut pas connaître les backlinks et savoir s'où proviennent les visiteurs pour nos stats, c'est embêtant.
Par exemple si facebook passe tout en https, on ne pourra pas identifier les referer... je vois pas en quoi ça améliore la sécurité.

C'était très important de savoir qu'on recevait des clics depuis des webmails par exemple: ça prouvait que les gens recommendaient le site de cette façon.

Re: pas de referer depuis Hotmail ou Gmail ?? comment font-i

Posté : 15 déc. 2011, 22:17
par Calimero
C'est bien dans la RFC : http://tools.ietf.org/html/rfc2616#section-15.1.3

Et pour être précis, le referer n'est pas transmis SI le site de provenance est sécurisé ET que le lien de destination ne l'est pas :-) Tu devines maintenant comment t'adapter au problème.

Re: pas de referer depuis Hotmail ou Gmail ?? comment font-i

Posté : 15 déc. 2011, 22:34
par Jim125
Merci Calimero,
et merci à vous tous, j'ai vraiment appris un truc utile sur les referer.

Ca voudrait dire que si mon site est en HTTPS, je vais recevoir les referer ?

J'ai pas de site en HTTPS pour tester, zut...