我已經在Windows 7操作系統上安裝了Apache服務器2.2.22,Php 5.4.5和Mysql 5.5.27。每件事情都很好。但我沒有得到IP地址。這裏是我的IP地址收集代碼如何在php中獲得IP地址
<?php
//Test if it is a shared client
if (!empty($_SERVER['HTTP_CLIENT_IP']))
{
$ip = $_SERVER['HTTP_CLIENT_IP'];
//Is it a proxy address
}
elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR']))
{
$ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
}
else
{
$ip = $_SERVER['REMOTE_ADDR'];
}
//The value of $ip at this point would look something like: "192.0.34.166"
$ip = ip2long($ip);
任何人都可以幫助我如何獲得IP地址。我是否需要更改或修改Apache httpd.conf或php.ini文件來解決此問題。
什麼*不*你? – deceze 2012-08-08 12:01:36
千萬不要像這樣使用它。永遠不要相信客戶端發送的數據在http_x_forwarded_for中可能是任何東西,它通常用於通過發送x-forwarded-for與其他頭文件來欺騙用戶ip,因此可以完全被屏蔽。嘗試例如發送這個標題與自定義內容到cmyip.com - 它會直接顯示它。 – Zaffy 2012-08-08 12:37:35
這個網站上應該有比這個更好的代碼 - 還有更好的評論和討論這些代碼帶來的問題。 – hakre 2013-05-11 09:44:09