Bestimmen I. P.-Adresse der Verweisenden Website
Derzeit arbeite ich an einem marketing-Modul zur Verfolgung der Webseiten, die bringt den Verkehr auf unserer Webseite. Gibt es einen Weg, um die Domäne oder die I. P.-Adresse der verweisenden Website mit PHP? Ich glaube HTTP_REFERER nicht immer zeigen, bis auf die $_SERVER global.
Dank im Voraus.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den
HTTP_REFERER
header muss gesendet werden, durch den client-browser. Sie können sich nicht darauf verlassen, dass es gesendet wird.Szenarien, wenn Sie nicht gesandt sind:
In diesen Fällen, gibt es nichts, was Sie tun können.
Wenn Sie die Verknüpfung Website jedoch, Sie könnte hinzufügen einer referrer-ID in der GET-parameter an den link:
könnte man dann analysieren und die
from
parameter im Skript.Umwandlung der referrer-string in IP in der Regel nicht eine gute Idee, zu sehen, wie viele IP-Adressen, host Dutzenden oder Hunderten von Websites. Die Unterscheidung die Seite der Nutzer kam aus verloren auf diese Weise.
Die bezugsadresse ist in der Anfrage-header aus allen kooperierenden Browser, für die es einen referrer. Wenn der Benutzer gerade eingegeben in der URL, dann gibt es keinen referrer.
Es ist eine einfache Programmier-Materie umwandeln der URL in eine IP-Adresse:
Wenn HTTP_REFERER nicht zeigen, bis in der server dann, dass der Benutzer nicht geben Sie Ihre Website durch einen link, oder er hat eine Art Maske, die variable über seinen browser. Sonst nicht viel Sie tun können.
Wenn es nicht zeigen, bis in $_SERVER es bedeutet normalerweise, dass der client nicht senden. Der referrer-Daten, die nicht vertrauenswürdig für die Genauigkeit da ist es völlig bis zu dem Benutzer (insbesondere browser).
Ihre beste Wette ist zu prüfen, ob der referer da ist, dann verwenden Sie die gethostbyname () - Funktion auf die domain, um die IP, die Sie wollen.
http://php.net/manual/en/function.gethostbyname.php
Bestimmen Sie die Wunschausrüstung URL mit
$_SERVER['HTTP_REFERER']
aber denken Sie daran, dass dieser manipuliert werden kann.Dann können Sie
gethostbyname($referrer)
um die IP-Adresse.Finden Sie unter: http://php.net/manual/en/reserved.variables.server.php und http://php.net/manual/en/function.gethostbyname.php