Kako Saznati Ip Posjetitelja Stranice

Sadržaj:

Kako Saznati Ip Posjetitelja Stranice
Kako Saznati Ip Posjetitelja Stranice

Video: Kako Saznati Ip Posjetitelja Stranice

Video: Kako Saznati Ip Posjetitelja Stranice
Video: 💻Вычисление Человека По IP. Деанон В Сети💻 2024, Maj
Anonim

Najčešće se za njegovu identifikaciju koristi IP adresa posjetitelja stranice. Ali osim toga, koristeći IP, možete dobiti puno dodatnih informacija o posjetitelju - na primjer, saznati njegovog dobavljača Interneta i geografsku lokaciju. U praksi se PHP skripte na strani servera najčešće koriste za izdvajanje IP adresa iz zaglavlja zahtjeva koje šalje pregledač.

Kako saznati ip posjetitelja web stranice
Kako saznati ip posjetitelja web stranice

Neophodno je

Osnovno znanje PHP-a

Instrukcije

Korak 1

Koristite PHP-ovu ugrađenu getenv funkciju za čitanje IP adresa iz niza varijabli superglobalnog okruženja. U najjednostavnijem slučaju, bit će dovoljno pročitati varijablu pod nazivom REMOTE_ADDR. Odgovarajući dio PHP koda mogao bi izgledati ovako: $ userIP = getenv ('REMOTE_ADDR');

Korak 2

Pored varijable REMOTE_ADDR poslane u zahtjevu, provjerite i varijable HTTP_VIA i HTTP_X_FORWARDED_FOR. Ako posjetitelj koristi proxy server, tada se posredna adresa mora zabilježiti u obje varijable - i u HTTP_VIA i u REMOTE_ADDR. U ovom slučaju možete pokušati saznati stvarni IP posjetitelja putem HTTP_X_FORWARDED_FOR - proxy server mora u njega staviti originalnu adresu. Međutim, to se ne radi uvijek, a korisnik ima priliku odabrati "neprozirni" proxy server koji ne prenosi originalnu IP adresu posjetitelja koji je poslao zahtjev. U svakom slučaju, trebali biste koristiti što više načina za dobivanje originalne IP adrese u kodu dodavanjem provjere za varijablu

Korak 3

Spojite u jedan red PHP koda sekvencijalnu provjeru tri varijable okoline, koje mogu sadržavati originalnu IP adresu posjetitelja. To se može učiniti, na primjer, ovako: $ userIP = getenv ('HTTP_CLIENT_IP') ILI $ userIP = getenv ('HTTP_X_FORWARDED_FOR') ILI $ userIP = getenv ('REMOTE_ADDR');

Korak 4

Uklonite dodatne znakove i ostalo "smeće" iz rezultirajuće IP vrijednosti koja može ući u varijable okoline. To se može učiniti, na primjer, pomoću ugrađenih PHP funkcija TRIM i preg_replace: $ userIP = TRIM (preg_replace ('# ^ ([^,] +) (,. *)? #', '$ 1', $ userIP));

Korak 5

Kombinirajte sav kôd u prilagođenu funkciju tako da se možete pozivati na njega, umjesto da ponavljate redove provjere i čišćenja u različitim dijelovima PHP skripti. Na primjer, ovako: FUNKCIJA getUserIP () {

$ userIP = getenv ('HTTP_CLIENT_IP') ILI $ userIP = getenv ('HTTP_X_FORWARDED_FOR') ILI $ userIP = getenv ('REMOTE_ADDR');

VRATITI OBREZ (preg_replace ('# ^ ([^,] +) (,. *)? #', '$ 1', $ userIP));

}

Preporučuje se: