可能重複:
Getting Users Real IP address using PHP最可靠的方法來獲取使用php的用戶的ip地址?
我想記錄的人誰訪問使用PHP腳本來阻止垃圾郵件發送者可能我的網站的IP地址。有沒有一種確定的方法來查找和記錄任何人的真實IP地址或最可靠的方法?
更新:我的網站只要求用戶輸入密碼登錄,不需要用戶名。如果我想保留現有的驗證方法,還可以使用其他方法來阻止或阻止大多數垃圾郵件發送者?
可能重複:
Getting Users Real IP address using PHP最可靠的方法來獲取使用php的用戶的ip地址?
我想記錄的人誰訪問使用PHP腳本來阻止垃圾郵件發送者可能我的網站的IP地址。有沒有一種確定的方法來查找和記錄任何人的真實IP地址或最可靠的方法?
更新:我的網站只要求用戶輸入密碼登錄,不需要用戶名。如果我想保留現有的驗證方法,還可以使用其他方法來阻止或阻止大多數垃圾郵件發送者?
功能在PHP中找到真正的IP地址
function getRealIpAddr()
{
if (!empty($_SERVER['HTTP_CLIENT_IP'])) //check ip from share internet
{
$ip=$_SERVER['HTTP_CLIENT_IP'];
}
elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) //to check ip is pass from proxy
{
$ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
}
else
{
$ip=$_SERVER['REMOTE_ADDR'];
}
return $ip;
}
來源: - http://roshanbh.com.np/2007/12/getting-real-ip-address-in-php.html通過IP
請注意,X-Forwarded-For可能是一個逗號+空格分隔的IP列表,而不僅僅是1:http://en.wikipedia.org/wiki/X-Forwarded-For #格式 – Fanis 2012-10-31 08:49:39
這不是很危險嗎? http_x_forwared可以被客戶修改嗎?只需堅持$ _SERVER ['REMOTE_ADDR']; – Gokigooooks 2016-08-18 13:43:51
正如Dagon所說的,$ _SERVER ['REMOTE_ADDR'],至少使用Apache。
但是再次,它已經在Apache日誌中。
還有什麼可以我如何阻止或阻止大多數垃圾郵件發送者? – user701510 2011-04-26 04:42:09
recaptcha?需要Facebook登錄(並且只接受至少有10個朋友的人)?只是想到幾件事 – 2011-04-26 04:50:16
$ _ SERVER [ 'REMOTE_ADDR'],你不能阻止垃圾郵件發送者的任何可靠的方法 – 2011-04-26 04:30:20