所以,在開機後,送一個 HTTP REQUEST ( GET ) 到另一台主機
主要是為了取得開機後所產生的 IP
以下是 負責記錄 Client 傳送過來的 IP 位置
<?php
/*
write log : resp.php?w=pi
read log : resp.php?r=pi
*/
$log_file = 'chk.log';
$today_dt = date("Y-m-d", time());
$ip_addr = trim($_SERVER['REMOTE_ADDR']);
// Initial Log File.
if (!file_exists($log_file))
{
$data[$today_dt] = array();
file_put_contents($log_file, serialize($data));
}
$data = unserialize(file_get_contents($log_file));
$today_arr = $data[$today_dt];
if ($_GET['w']=='pi')
{
// Logger Data.
end($today_arr);
$today_arr_key = trim(key($today_arr));
if ($ip_addr != $today_arr[$today_arr_key]['ip'])
{
$data[$today_dt][] = array('ip'=>$ip_addr,
'cnt'=>1,
'time'=>date("Y-m-d H:i:s", time()));
}else{
$data[$today_dt][$today_arr_key]['cnt']++;
$data[$today_dt][$today_arr_key]['time'] = date("Y-m-d H:i:s", time());
}
file_put_contents($log_file, serialize($data));
echo "OK";
}
elseif ($_GET['r']=='pi')
{
// show log data
$today_arr_reverse = array_reverse($today_arr);
$str = '';
foreach($today_arr_reverse as $d)
{
if ($str=='')
{
printf("
%s
", $d['ip']);
}
$str .= sprintf("<tr><td>%s</td><td>%s</td><td>%s</td></tr>", $d['time'], $d['ip'], $d['cnt']);
}
printf("<table border=\"1\"><tr><th>time</th><th>ip</th><th>cnt</th></tr>%s</table>", $str);
}else{
// Just say hi.
echo "hi.";
}
exit;
?>
沒有留言:
張貼留言