Si Të Zbuloni Ip-in E Një Vizitori Të Faqes

Përmbajtje:

Si Të Zbuloni Ip-in E Një Vizitori Të Faqes
Si Të Zbuloni Ip-in E Një Vizitori Të Faqes

Video: Si Të Zbuloni Ip-in E Një Vizitori Të Faqes

Video: Si Të Zbuloni Ip-in E Një Vizitori Të Faqes
Video: Using nslookup to resolve domain names to ip addresses 2024, Mund
Anonim

Më shpesh, adresa IP e një vizitori të faqes përdoret për ta identifikuar atë. Por përveç kësaj, duke përdorur IP, ju mund të merrni shumë informacione shtesë për vizitorin - për shembull, gjeni ofruesin e tij të Internetit dhe vendndodhjen gjeografike. Në praktikë, skriptet PHP nga ana e serverit përdoren më shpesh për të nxjerrë adresat IP nga kokat e kërkesave të dërguara nga shfletuesi.

Si të zbuloni ip-in e një vizitori të faqes
Si të zbuloni ip-in e një vizitori të faqes

Është e nevojshme

Njohuri themelore të PHP

Udhëzimet

Hapi 1

Përdorni funksionin e integruar getenv të PHP për të lexuar adresat IP nga vargu i ndryshueshëm i mjedisit superglobal. Në rastin më të thjeshtë, do të jetë e mjaftueshme për të lexuar ndryshoren e quajtur REMOTE_ADDR. Pjesa përkatëse e kodit PHP mund të duket kështu: $ userIP = getenv ('REMOTE_ADDR');

Hapi 2

Përveç ndryshores REMOTE_ADDR të dërguar në kërkesë, kontrolloni ndryshoret HTTP_VIA dhe HTTP_X_FORWARDED_FOR. Nëse vizitori përdor një server proxy, atëherë adresa e ndërmjetme duhet të regjistrohet në të dy ndryshoret - si në HTTP_VIA ashtu edhe në REMOTE_ADDR. Në këtë rast, mund të përpiqeni të zbuloni IP-në e vërtetë të vizitorit përmes HTTP_X_FORWARDED_FOR - serveri i përfaqësimit duhet të vendosë adresën origjinale në të. Sidoqoftë, kjo nuk është bërë gjithmonë dhe përdoruesi ka mundësinë të zgjedhë një server proxy "të paqartë" që nuk transmeton IP origjinale të vizitorit që dërgoi kërkesën. Në çdo rast, duhet të përdorni sa më shumë mënyra të jetë e mundur për të marrë adresën IP origjinale në kodin tuaj duke shtuar një kontroll për ndryshoren

Hapi 3

Bashkoni në një rresht të kodit PHP një kontroll vijues të tre ndryshoreve të mjedisit, të cilat mund të përmbajnë adresën IP origjinale të vizitorit. Kjo mund të bëhet, për shembull, si kjo: $ userIP = getenv ('HTTP_CLIENT_IP') OSE $ userIP = getenv ('HTTP_X_FORWARDED_FOR') OSE $ userIP = getenv ('REMOTE_ADDR');

Hapi 4

Hiqni karakteret shtesë dhe "mbeturinat" e tjera nga vlera e rezultatit IP që mund të futet në variablat e mjedisit. Kjo mund të bëhet, për shembull, duke përdorur funksionet e integruara PHP TRIM dhe preg_replace: $ userIP = TRIM (preg_replace ('# ^ ([^,] +) (,. *)? #', '$ 1', $ userIP));

Hapi 5

Kombinoni të gjithë kodin në një funksion të personalizuar në mënyrë që të mund t'i referoheni atij në vend që të përsërisni linjat e kontrollit dhe pastrimit pa pushim në pjesë të ndryshme të skenareve tuaja PHP. Për shembull, si kjo: FUNCTION getUserIP () {

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

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

}

Recommended: