Comment les sites Web savent-ils qu'ils ne sont pas la page d'accueil ou le moteur de recherche par défaut?

89

Pour autant que je sache, il n'y a pas d'exposition publique d'API de la page d'accueil / du moteur de recherche par défaut d'un navigateur. Alors, comment Google sait-il afficher cela? Cela ne survient que lorsque Google n'est pas la page d'accueil / moteur de recherche par défaut de mon navigateur.

Fenêtre contextuelle Google sur la page: «Accédez plus rapidement à Google.  Basculez votre moteur de recherche par défaut sur Google. " Fenêtre contextuelle Googe: «Venez souvent ici?  Faites de Google votre page d'accueil. »

Je ne peux que supposer qu'ils déduisent de nombreuses variables, telles que le référent. Je n'ai pas réussi à creuser dans le JavaScript compilé de Google. Je ne suis même pas sûr qu'il soit détecté côté client ou côté serveur.

Je suis sur Firefox 44, mais j'ai également vu ces bannières sur Chrome.

Tennyson H
la source
1
En relation: stackoverflow.com/questions/15813851/…
Ufuk Hacıoğulları
1
Je les reçois dans Edge même après les avoir définis par défaut. Il ne peut tout simplement pas savoir.
Arturo Torres Sánchez

Réponses:

70

Simplement, il n'y a aucun moyen de faire cela avec JavaScript car la "recherche par défaut / page d'accueil" est la préférence de l'utilisateur et vous n'y avez pas accès sans l'autorisation de l'utilisateur car ce serait un problème de sécurité / confidentialité.

Ce que Google fait à chaque visite d'un utilisateur est de montrer une annonce promotionnelle avec une icône de fermeture et un bouton Aller avec des instructions sur la façon de la définir comme page d'accueil par défaut. En cliquant sur l'un d'entre eux, il crée 2 cookies afin de vérifier la prochaine fois vos cookies et de faire disparaître les promos. Même lorsque Google est votre page d'accueil et que vous effacez vos cookies, une bannière est toujours là pour promouvoir Google en tant que page d'accueil.

J'ai vérifié cela avec Firefox, pas au courant de Chrome.

Shailendra Sharma
la source
6
Cela a du sens pour moi. J'obtiens les popups lorsque j'exécute Firefox en mode privé, donc il n'a pas accès à des OHAI GOOGLEcookies.
Codes avec Hammer
Il est tout à fait possible qu'ils fassent quelque chose de spécial avec Chrome depuis qu'ils l'ont écrit.
craftworkgames
ils ne le montrent probablement pas pour Chrome puisque Google est de toute façon le moteur de recherche par défaut
gengkev
Les informations de la page d'accueil sont accessibles par le navigateur lui-même, comme lorsque IE avait l'habitude de suggérer une page d'accueil dans le passé.
Khaled.K
19

Je ne sais pas exactement ce que fait Google, mais ce que je ferais:

  • définissez l'URL de la page d'accueil avec un paramètre spécial et vérifiez-le - ' http://www.example.com/#!homepage (empêche les faux négatifs)
  • vérifier le Refererchamp:
    • si ce n'est PAS là, supposez que l'utilisateur l'a tapé manuellement
    • si c'est très similaire pour chaque visite utilisateur (et peut-être à ce qui ressemble au début d'une session de navigation - déduit via GA sur chaque page là-bas), supposez que l'utilisateur vient ici en cliquant toujours de quelque part
  • définir un cookie, par exemple visitedHelpAboutHomePagelorsque l'utilisateur visite la page "oui, montrez-moi" (peut empêcher les faux négatifs, mais peut également générer des faux positifs)

Notez que le "paramètre spécial" se produit dans le scénario "recherche initiée par la boîte de recherche": il y a un paramètre sourceidqui signifie probablement "source de recherche".

Piskvor a quitté le bâtiment
la source
2
Une ancre #homepagen'est cependant pas soumise au serveur, mais peut être disponible pour JavaScript. De plus, je suppose que la page d'accueil n'a pas non plus de référent, n'est-ce pas?
Hagen von Eitzen
Pas mal, donc vous essayez de voir si l'utilisateur visite beaucoup un site Web en tapant. Parce que vous savez, la page d'accueil ne s'ouvre que sur une nouvelle fenêtre, donc la plupart du temps, les utilisateurs saisissent son adresse, car elle ne se trouve pas dans le signets dans la plupart des cas.
Khaled.K
Hmm, distinguer le signet / la page d'accueil semble difficile (surtout que l'un est un cas particulier de l'autre) ...
Piskvor a quitté le bâtiment
11

Dans mon Firefox (v42), le message "Venez souvent ici?" s'affiche même lorsque Google est défini comme moteur de recherche par défaut.

Dans Safari, j'obtiens une boîte au même endroit qui dit "Une meilleure façon de naviguer sur le Web: Obtenez Google Chrome"

Dans Opera et Chrome, je n'obtiens aucune boîte du tout, même si je change mon moteur de recherche par défaut pour autre chose que Google.

Donc, je pense que tout ce qu'ils font, c'est la détection du navigateur dans JavaScript, à l'aide de l'objet UserAgent.

cutmancometh
la source
1
Je suppose que cela pourrait être basé uniquement sur l'UA, mais on pourrait espérer que Goog ne diffusera pas des millions de bannières marketing faussement positives par jour? Je comprends l'ironie de ce commentaire.
Tennyson H
3
Être le moteur de recherche est totalement différent d'être votre page d'accueil par défaut.
Elin