2015-07-30 1 views
2

J'ai une page qui redirige les utilisateurs vers un autre site via la fonction header() de PHP. Cependant, je veux vider les variables HTTP_REFERER des utilisateurs avant de les envoyer à ce site Web.Quelle est la méthode la plus fiable pour vider HTTP_REFERER des utilisateurs?

Quelle est la manière la plus fiable de faire ceci? Je suppose que PHP ne peut pas aider puisque HTTP_REFERER est une variable côté client. Peut-être que JavaScript alors? Y a-t-il une bibliothèque légère pour ça?

+0

vous ne pouvez pas que son navigateur défini –

Répondre

1

Vous pouvez détecter le référent en JavaScript, mais pas le définir.

Vous pourriez les envoyer à une page intermédiaire, disons en PHP, qui pourrait cependant définir le référant, puis les transférer.

Here is the process on SO & a walkthrough on using that SO link.

+0

Merci pour l'opinion, mais n'y a-t-il pas des solutions de contournement? Il y a tellement de sites qui font ça ... – Jeff

+0

J'ai mis à jour ma réponse pour avoir une solution fournie ici sur SO. – Madness

+1

Merci, je vais vérifier. – Jeff

0

La seule infaillible façon est d'avoir une sorte de page de transition entre votre source et la destination.

Par exemple: example.com/var/product/1234 =>example.com/redirector/google.com =>google.com

De cette façon, le site de destination ne recevrait que le lien de la page de transition.

Si vous voulez masquer complètement le fait que les utilisateurs proviennent de votre site, vous devez avoir la page de transition hébergée sur un autre domaine. Le site Web anonym.to offre un tel service. Cependant, comme il s'agit d'un service tiers gratuit, vous souhaiterez peut-être héberger le vôtre plutôt que de garantir la disponibilité et d'empêcher la consignation des demandes. L'implémentation serait d'environ 3 lignes de code PHP.

2

une méthode js seule:

location.href="data:text/html,"+ 
    encodeURIComponent("<script>location.href='http://yahoo.com/'<\/script>"); 

même si le code a laissé un arbitre, il serait à la dataURL, pas votre site.

+0

Semble fonctionner, pouvez-vous fournir une documentation de soutien à ce sujet? – Madness

+0

Hm, j'ai trouvé ça. On dirait que ce serait fiable. http://stackoverflow.com/questions/9238890/convert-html-to-datatext-html-link-using-javascript Je n'ai jamais vu quelqu'un utiliser des data-URI comme ça avant, mais c'est assez intelligent! – Madness

+0

documentation de support? C'est une simple commande unique, donc je ne suis pas sûr de ce que vous cherchez. je l'ai juste inventé après y avoir réfléchi; le changement de protocole masquera le domaine du site d'origine ... – dandavis