2017-07-10 3 views
1

J'essaie de comprendre le comportement de l'en-tête HTTP referer. J'ai remarqué que parfois le referer est plein (URL complète, y compris le chemin et la chaîne de requête) mais surtout il inclut uniquement le domaine.Dans quels cas HTTP referer sera tronqué

Par exemple « https://www.google.com/ » au lieu de « https://www.google.com/search?q=http+referer+truncated&oq=http+referer+truncated&aqs=chrome..69i57.6485j0j1&sourceid=chrome&ie=UTF-8#q=http+referer+is+not+full »

Existe-t-il des règles quant au moment où le refere et est pleine et quand il est tronqué?

+0

N'a jamais vu un tronqué, sauf si la requête venait de '/'. Dans quels scénarios observez-vous cela? – CodeCaster

+0

Je viens d'éditer la question avec l'exemple – danieln

+0

Le seul cas que je sais que le référent HTTP serait tronqué est si vous utilisez un analyseur de paquets ou quelque chose de similaire. Les limites d'affichage internes peuvent être inférieures à la taille réelle. –

Répondre

1

Les en-têtes de référenceur HTTP sont créés par les navigateurs selon les critères souhaités en utilisant Referrer Policy même s'il existe une norme générale utilisée par la majorité des navigateurs, il existe des différences sur la façon dont les navigateurs traitent les instructions des serveurs. qui ne coopère pas bien avec les recommandations de WWWC sur ce sujet. Alors pourquoi est-il nécessaire d'utiliser différents en-têtes de référenceur HTTP? Pour comprendre cela, nous devons regarder à quoi servent ces en-têtes en premier. Le but principal dans sa forme la plus simple est de "transporter des informations de la page d'origine à la nouvelle page".

Partout où nous voyons le mot «information» sur le web, il y a un concept de sécurité de l'information qui y est attaché et l'en-tête HTTP n'est pas différent. En fonction du type d'en-tête d'informations, le serveur peut spécifier le type de stratégie de référent à utiliser. Voici la liste des politiques referrer de

W3

enum ReferrerPolicy { "", "no-referrer", "no-referrer-when-downgrade", "same-origin", "origin", "strict-origin", "origin-when-cross-origin", "strict-origin-when-cross-origin", "unsafe-url" };

Des informations détaillées sur chacun de ceux-ci sont disponibles dans le lien politique Référenceur i inclus ci-dessus.

Pour donner un exemple; Utilisation de google à la recherche de "Pages Jaunes". dans ce cas

origine: https://www.google.ie

referer: https://www.google.ie/

Référent Politique: origine

URL générée: https://www.google.ie/gen_204?atyp=i&ct=&cad=udla=3&ei=x65kGDkdyKGHDkF0KeoBg&e=12&zx=1494785478502

lien

au premier résultat est

https://www.google.ie/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0ahUKEwiA26TfiHSGDFHKFAKHQXoCWUQFggoMBB&url=https%3A%2F%2Fwww.goldenpages.ie%2F&usg=AFQjCNGTG-tsBSFHgMkXw_GuvOcLEOD2hg

Bien que l'URL est https://www.goldenpages.ie/

Quand on clique en fait les changements referrer de lien vers

Referer: https://www.goldenpages.ie/ et la politique referrer est

Politique Référenceur: no-referrer-quand-déclassement

Cela signifie que si nous cliquons sur un autre lien de la page actuelle, nous ne verrons pas tous les paramètres supplémentaires similaires à ceux que nous avons vu dans l'URL de la page de résultats de recherche google.

Pour prouver que c'est le cas; cliquez sur un lien de la page en cours et observez l'en-tête du référant en fonction du type de politique (qui peut être trouvé dans le fichier js associé si vous utilisez des outils de développement et inspectez l'activité réseau)

Lorsque vous cliquez sur "Liste" sont transmis votre entreprise » séjour lien referrer comme

https://www.goldenpages.ie/list-your-business/

et pas d'autres paramètres

donc, juste pour ranger cette explication en désordre; L'URL générée dépend des règles qui sont définies pour la politique de Référent, qu'il s'agisse d'une règle de base simple sans paramètre ou d'une URL très longue avec beaucoup d'informations relatives à l'utilisateur et à l'origine de la navigation.

Note: Les URL ne fonctionneront pas J'ai mélangé quelques lettres.