php: geting ip adre

2 Cevap php

i want to get an ip addres of visitors. could you tell me what element of $_SERVER[] i should use?

$_SERVER['HTTP_CLIENT_IP'];
$_SERVER['HTTP_X_FORWARDED_FOR'];
or
$_SERVER['REMOTE_ADDR'];

teşekkürler

UPDATE:

Istemci Proxy Sunucusu aracılığıyla Internet'e bağlı ise o PHP $ _SERVER ['REMOTE_ADDR'] sadece kesin belirlemek için mevcut olabilir ekstra Sunucu değişkendir proxy sunucusu değil müşterinin machine.There ait IP adresini döndürür PHP istemci makinenin IP adresi, onlar HTTP_CLIENT_IP ve HTTP_X_FORWARDED_FOR vardır.

2 Cevap

$_SERVER['REMOTE_ADDR'];

According to the PHP documentation: The IP address from which the user is viewing the current page.

This is the IP that is connected to your server (reported by your server).
The other values are set by the client.

HTTP_X_FORWARDED_FOR bazı proxy sunucuları tarafından belirlenen standart olmayan bir başlık (dolayısıyla x-öneki), olduğunu. Bu ISS'ler küfürlü IP adreslerini tanımlamak için büyük proxy sunucusu satıcıları tarafından bir girişim; tüm iletilen-için IP'lerle bir listesini içerir.

Ben HTTP_CLIENT_IP başlığının kökenini bilmiyorum

Uygulama bir ters proxy veya böyle bir şeyin arkasından eğer bağlıdır. Yapılacak en kolay şey, üçünü kontrol ve IP'lerin biri değil birini seçmektir.