Dans quels cas HTTP REFERER sera-t-il vide
Je sais qu'il est possible d'obtenir un HTTP_REFERER vide. Dans quelles circonstances cela se produit-il? Si j'en ai un vide, cela signifie-t-il toujours que l'utilisateur l'a changé? Obtenir un vide est-il la même chose que d'obtenir un nul? et dans quelles circonstances est-ce que je reçois ça aussi?
4 réponses
Il sera/peut être vide lorsque l'utilisateur
- entré L'URL du site dans la barre d'adresse du navigateur lui-même.
- a visité le site par un signet maintenu par le navigateur.
- visité le site en première page dans la fenêtre / onglet.
- Cliquez sur un lien dans une application externe.
- est passé d'une URL https à une URL http.
- est passé d'une URL https à une autre URL https.
- a installé un logiciel de sécurité (antivirus / firewall / etc) qui supprime le référent de toutes les demandes.
- se trouve derrière un proxy qui supprime le référent de toutes les requêtes.
- a visité le site par programme (comme, curl) sans définir l'en-tête referrer (searchbots!).
HTTP_REFERER-envoyé par le navigateur, indiquant la dernière page que le navigateur a vue!
Si vous faites confiance à [HTTP_REFERER] pour une raison importante, vous ne devriez pas, car il peut être falsifié facilement:
- certains navigateurs limitent l'accès pour ne pas autoriser le passage de HTTP_REFERER
- tapez une adresse dans la barre d'adresse ne passera pas le HTTP_REFERER
- ouvrir une nouvelle fenêtre de navigateur ne passera pas le HTTP_REFERER, car HTTP_REFERER = NULL
- a un addon de navigateur qui bloque pour des raisons de confidentialité. Certains pare-feu et AVs le font.
Essayez cette extension firefox, vous serez en mesure de définir les en-têtes que vous voulez:
@ maître de célébration:
Firefox:
extensions: refspoof, refontrol, modifier les en-têtes, sans referer
désactiver Complètement: l'option est disponible dans about:config dans le réseau".http.sendRefererHeader " et vous voulez définir ceci sur 0 pour désactiver le passage du référent.
Google chrome / Chrome:
extensions: noref, spoofy, externe noreferrer
désactiver Complètement: Chnage ~/.config/google-chrome/Default/Préférences ou ~/.config / chromium / Default / Preferences et définissez ceci:
{
...
"enable_referrers": false,
...
}
ou simplement ajouter --no-referrers au raccourci ou dans cli:
google-chrome --no-referrers
Opéra:
désactiver Complètement: Paramètres > Préférences > Avancé > Réseau, et décochez "envoyer des informations de référence"
Service Web D'usurpation d'identité:
Proxy de filtrage autonome (usurper n'importe quel en-tête):
L'Usurpation http_referer lors de l'utilisation de wget
{[3]‘' -- referer = url 'L'Usurpation http_referer lors de l'utilisation de curl
- e, -- referer
Usurpation d'identité http_referer wth telnet
telnet www.yoursite.com 80 (press return)
GET /index.html HTTP/1.0 (press return)
Referer: http://www.hah-hah.com (press return)
(press return again)
La liste de BalusC est solide. Une autre façon de ce champ apparaît souvent vide est lorsque l'utilisateur est derrière un serveur proxy. Ceci est similaire à être derrière un pare-feu, mais est légèrement différent donc je voulais le mentionner par souci d'exhaustivité.
Il sera également vide si le nouveau projet Referrer Policy standard draft est utilisé pour empêcher que l'en-tête referer soit envoyé à l'origine de la requête. Exemple:
<meta name="referrer" content="none">
Bien que Chrome et Firefox aient déjà implémenté une version préliminaire de la Politique Referrer, vous devriez faire attention car par exemple Chrome attend no-referrer
au lieu de none
(et j'ai aussi Vu never
quelque part).