Après quelques tests, je commence à conclure qu'un navigateur n'envoie pas d'en-tête HTTP Referer lorsque l'on clique sur une page http à partir d'une page https.
Quelle raison de sécurité est-ce pour? Est-ce défini quelque part dans la norme?
Après quelques tests, je commence à conclure qu'un navigateur n'envoie pas d'en-tête HTTP Referer lorsque l'on clique sur une page http à partir d'une page https.
Quelle raison de sécurité est-ce pour? Est-ce défini quelque part dans la norme?
La RFC HTTP indique, dans la section 15.1.3 Codage des informations sensibles dans les URI :
Les clients NE DEVRAIENT PAS inclure de champ d’en-tête de référent dans une requête HTTP (non sécurisée) si la page de renvoi a été transférée avec un protocole sécurisé.
Donc, ceci est le comportement attendu / standard.
Raison: Parfois, les ID de session sont codés en URL. Les pages HTTP peuvent avoir un script intersite qui vole la session de la communication HTTPS. Pour éviter cela, le référent n'est pas transmis lors de la transition HTTPS vers HTTP, de sorte que l'ID de sessin encodé dans l'URL ne puisse pas être volé.
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.