|
#1
|
||||
|
||||
|
代碼:
<?php
function get_client_ip()
{
if ($_SERVER['REMOTE_ADDR']) {
$cip = $_SERVER['REMOTE_ADDR'];
} elseif (getenv("REMOTE_ADDR")) {
$cip = getenv("REMOTE_ADDR");
} elseif (getenv("HTTP_CLIENT_IP")) {
$cip = getenv("HTTP_CLIENT_IP");
} else {
$cip = "unknown";
}
return $cip;
}
echo "".get_client_ip();
?>
例:左上目錄 http://formosa.com.tw/ |
|
#2
|
|||
|
|||
|
補充一下顯示 IP 的 PERL 程式碼:
代碼:
$ip = "$ENV{'REMOTE_ADDR'}";
print <<EOF;
$ip
EOF
http://dict.tw 說明: REMOTE_ADDR 的值是由 TCP connection 取得的,不能藉由偽造 HTTP header 改變,但是使用者可能藉由 proxy 連線,因此可能顯示的是 proxy 的 IP。 開版大的變數 HTTP_CLIENT_IP 是考慮到 proxy 的因素,甚至有人表示須考慮 HTTP_X_FORWARDED_FOR,我個人實測心得:各 proxy 版本眾多,有些強調匿名,因此這兩個變數未必可信。 而且這兩個變數是可以偽造的 (spoofing)。 你可以用這個 php 程式看到三個變數: 代碼:
<?php /** 顯示 3 種不同的 IP **/ echo 'HTTP_CLIENT_IP=' . $_SERVER['HTTP_CLIENT_IP'] . '<BR>'; echo 'HTTP_X_FORWARDED_FOR=' . $_SERVER['HTTP_X_FORWARDED_FOR'] . '<BR>'; echo 'REMOTE_ADDR=' . $_SERVER['REMOTE_ADDR']; ?>
__________________
線上字典 |
|
#3
|
||||
|
||||
|
謝謝分享好東西 收下了
__________________
v515 | 85cc | 85st | ut | uthome | 小蜜蜂 | 免費視訊聊天室 |UThome視訊聊天室 |UT網際空間 | UT聊天室 - UT網際空間 | uthome視訊聊天 | UThome網站聯盟 | UT聊天室 UThome | 無毛小站.com | 按摩 |
|
#4
|
||||
|
||||
|
這個更好
顯示這樣 您的IP:[1.168.238.123] 来自:台湾省 台北市中华电信 操作系统:Windows XP分辨率:1024*768 语言:zh-TW 浏览器:Chrome Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.117 Safari/537.36 http://ip.chinaz.com/ 誰有辦法弄一個? 528168.com報答 ![]() ![]() |
|
#5
|
|||
|
|||
|
引用:
其他的都是 http header 的資料,請參閱 PHP 官網說明: http://tw.php.net/getallheaders
__________________
線上字典 |
|
#6
|
||||
|
||||
|
引用:
網友進入後 自動會顯示資料來 我完全是門外漢 只會剪剪貼貼 此篇文章於 2014-02-22 03:39 PM 被 668 編輯。 |
|
#7
|
|||
|
|||
|
這只是用 php 印出變數的功能,php 官網有說明:
(請注意 Examples 內,有你要的程式範例。) http://www.php.net/manual/en/function.get-browser.php http://www.php.net/manual/en/functio...st-headers.php 要切記,這些變數都是可以偽造的,所以只能印出來玩玩,不能做為資安的依據。
__________________
線上字典 |
|
#8
|
|||
|
|||
|
完整版 (10個字元)
PHP 代碼:
|
|
#9
|
||||
|
||||
|
引用:
|
|
#10
|
|||
|
|||
|
|