Halli hallo. Hat jemand ne Idee, wie man den Serverstandort des Besuchers auslesen kann. z.B wie bei Google. Wenn man als deutscher auf google.com geht, wird man zu google.de umgeleitet. Weiße jemand, wie man so was mit php machen kann?
Serverstandort herausfinden?
Einklappen
X
-
hat primär nichts mit php zu tun, sondern mit dem HTTP-protokoll. du kannst aber natürlich http-header mit php verschicken (und auslesen).
http://en.wikipedia.org/wiki/Content_negotiation
by the way: der quellcode von php.net ist offen, die machen das auch. brauchst nur ein wenig im code suchen.
grüße
axo
-
Bei http://www.ripe.net/ kannst du die IP eingeben und es gibt dir die Firma oder die Telekommunikationsfirma raus, der diese IP gehört.
Vielleicht hilf dir das weiter...
Es wäre sicher ziemlich umständlich - man müsste die ganze Website mit php auslesen und so weiter - aber du weisst so von welchem Land der User ist.Zuletzt geändert von faeba; 02.08.2006, 20:49.
Kommentar
-
Re: Serverstandort herausfinden?
Original geschrieben von pureattraction
Hat jemand ne Idee, wie man den Serverstandort des Besuchers auslesen kann.
versuchs mal mit:PHP-Code:$_SERVER["HTTP_ACCEPT_LANGUAGE"];
Kommentar
-
@3DMax: Ja du hast recht, ich meine den "Verteiler".
Wenn du z.B bei T-Online bist, und ich die IP, mit der du meine Seite besuchst auslese und zurückverfolge, komme ich nur bis zur T-Online Zentrale. (auch nur mit viel Glück). Und die ist meistens im selben Land.
Das ist quasi ein halb-Proxy. Aber as würde ja schon reichen.
Danke an die anderen.
Der Browser sendet also "Accept-Language: fr" wenn ein Franzose meine Seite besucht, und wie kann ich das auswerten?
z.B.PHP-Code:<?php
If ($country="fr") {
#some code;
}
?>Zuletzt geändert von pureattraction; 02.08.2006, 21:16.
Kommentar
-
Original geschrieben von pureattraction Der Browser sendet also "Accept-Language: fr" wenn ein Franzose meine Seite besucht, und wie kann ich das auswerten?
die auswertung hast du doch schon selbst gepostet.
[EDIT]
vergleiche immer mit '=='
Kommentar
-
ich würde switch benutzen.
PHP-Code:switch ($language) {
case "fr":
echo "<meta http-equiv=\"refresh\" content=\"0; URL=fr/index.html\">";
break;
case "de":
echo "<meta http-equiv=\"refresh\" content=\"0; URL=de/index.html\">";
break;
case "it":
echo "<meta http-equiv=\"refresh\" content=\"0; URL=it/index.html\">";
break;
default:
echo "<meta http-equiv=\"refresh\" content=\"0; URL=fr/index.html\">"; // Defaultwert - falls andere Sprache
break;
}
------------
Easy, dann halt via PHP. Wusste nicht wie das mit php gehtZuletzt geändert von faeba; 02.08.2006, 21:30.
Kommentar
-
>> Vergleiche immer mit '=='.
Yepp. PHP ist zum großteil recht basiclike, da passiert so was schon mal.
Ja, auswerten kann ichs, aber wie komm ich an $country bzw. $language ???
So?
PHP-Code:$language = $_SERVER["HTTP_ACCEPT_LANGUAGE"];
Kommentar
-
meta refresh ist asche, kann auch deaktiviert sein.
besser per php header("Location: http://www.example.com/");
Kommentar
-
includen kannste natürlich auch.
Also, wie kommt jetzt $language zu ihrem Inhalt? [/B]
ich wollte gerade einen link posten, habs dann aber doch gelassen.
das findest du bestimmt allein heraus, so ein beißer, wie du bist
Kommentar
Kommentar