Kuidas Saidikülastaja Ip-d Teada Saada

Sisukord:

Kuidas Saidikülastaja Ip-d Teada Saada
Kuidas Saidikülastaja Ip-d Teada Saada

Video: Kuidas Saidikülastaja Ip-d Teada Saada

Video: Kuidas Saidikülastaja Ip-d Teada Saada
Video: El Chombo - Dame Tu Cosita feat. Cutty Ranks (Official Video) [Ultra Music] 2024, Mai
Anonim

Kõige sagedamini kasutatakse tema tuvastamiseks saidikülastaja IP-aadressi. Kuid lisaks sellele saate IP-d kasutades külastaja kohta palju lisateavet - näiteks saate teada tema Interneti-teenuse pakkuja ja geograafilise asukoha. Praktikas kasutatakse IP-aadresside väljavõtmiseks brauseri saadetud päringute päistest kõige sagedamini serveripoolseid PHP-skripte.

Kuidas saidikülastaja ip-d teada saada
Kuidas saidikülastaja ip-d teada saada

See on vajalik

Põhiteadmised PHP-st

Juhised

Samm 1

Kasutage PHP sisseehitatud funktsiooni getenv, et lugeda ülimaailmse keskkonna muutuja massiivi IP-aadresse. Lihtsamal juhul piisab muutuja nimega REMOTE_ADDR lugemisest. Vastav PHP-kooditükk võib välja näha järgmine: $ userIP = getenv ('REMOTE_ADDR');

2. samm

Lisaks päringus saadetud muutujale REMOTE_ADDR kontrollige muutujaid HTTP_VIA ja HTTP_X_FORWARDED_FOR. Kui külastaja kasutab puhverserverit, tuleb vaheaadress salvestada mõlemasse muutujasse - nii HTTP_VIA kui ka REMOTE_ADDR. Sellisel juhul võite proovida teada saada külastaja tegelikku IP-d HTTP_X_FORWARDED_FOR kaudu - puhverserver peab sinna sisestama algse aadressi. Kuid seda ei tehta alati ja kasutajal on võimalus valida "läbipaistmatu" puhverserver, mis ei edasta päringu saatnud külastaja algset IP-d. Igal juhul peaksite algse IP-aadressi saamiseks koodis kasutama nii palju võimalusi kui võimalik, lisades muutuja HTTP_CLIENT_IP tšeki.

3. samm

Liitke ühes PHP-koodi reas kolme keskkonnamuutuja järjestikune kontroll, mis võib sisaldada külastaja algset IP-aadressi. Seda saab teha näiteks järgmiselt: $ userIP = getenv ('HTTP_CLIENT_IP') VÕI $ userIP = getenv ('HTTP_X_FORWARDED_FOR') VÕI $ userIP = getenv ('REMOTE_ADDR');

4. samm

Eemaldage saadud IP-väärtusest lisamärgid ja muu "prügi", mis võib sattuda keskkonnamuutujatesse. Seda saab teha näiteks sisseehitatud PHP-funktsioonide TRIM ja preg_replace abil: $ userIP = TRIM (preg_replace ('# ^ ([^,] +) (,. *)? #', '$ 1', $ userIP));

5. samm

Kombineerige kogu kood kohandatud funktsiooniks, et saaksite sellele viidata, selle asemel, et oma PHP-skriptide erinevates osades kontroll- ja puhastusjooni korrata. Näiteks selline: FUNCTION getUserIP () {

$ userIP = getenv ('HTTP_CLIENT_IP') VÕI $ userIP = getenv ('HTTP_X_FORWARDED_FOR') VÕI $ userIP = getenv ('REMOTE_ADDR');

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

}

Soovitan: