2011-04-27 4 views
-1

je voudrais utiliser HTTP_REFERER pour envoyer mon propre référant.référent http personnalisé avec php

Vous aimez cette http://mywebsite.com/spoof.php?newurl=anotherwebsite.com ce que j'ai, mais ne fonctionne pas

spoof.php

<?php 
    $referer = (www.website.com, $_SERVER['HTTP_REFERER']); 
?> 

Répondre

1

Vous voulez envoyer des gens à une autre URL avec un référent usurpé? ce n'est pas possible.

1

Le référent est contrôlé par le client (c'est-à-dire son navigateur).

http://en.wikipedia.org/wiki/HTTP_referrer

Ils envoient à la nouvelle URL lorsque vous les redirigez.

+0

quelle est la différence entre mon script et dire ceci -> http://anonym.to/?http://google.com qui cache le referer? – jack

+0

Cette page utilise une méta-redirection: Votre code ne serait pas exécuté. Erreur d'analyse. – Homer6

1

Vous pouvez faire une requête avec ce fichier PHP en utilisant l'entête spoofed avec cURL, mais vous ne pouvez pas envoyer le client à cet endroit.

Le meilleur que vous pouvez faire est de faire écho un lien avec rel="noreferrer" et espérons que le navigateur de l'utilisateur le supporte (et cela ne fait que nier le référent, il ne le change pas). Ou encore, envoyez l'en-tête Location qui transformera le référent en votre site.

+0

quelle est la différence entre mon script et dire ceci -> http://anonym.to/?http://google.com qui cache le referer? – jack

+0

@jack Cela n'aurait aucun référent, pas de spoofing. – alex

1

Vous ne pouvez pas remplacer l'en-tête de provenance que le navigateur de l'utilisateur envoie. Si vous souhaitez contrôler l'en-tête referrer comme ça, alors votre seule option est d'envoyer la demande vous-même, en faisant soit:

  1. Demandez à votre serveur acte en tant que proxy pour la demande. Construisez une nouvelle requête HTTP côté serveur, définissez l'en-tête referrer comme vous le souhaitez et renvoyez le résultat au client. Notez que vous devrez réécrire toutes les URL relatives dans le balisage du site cible si vous souhaitez que la page s'affiche et fonctionne correctement pour l'utilisateur.

  2. Créez votre propre navigateur (ou peut-être un plug-in de navigateur) et demandez aux gens de l'utiliser. Ensuite, vous pouvez définir les en-têtes comme vous le souhaitez.

Questions connexes