知识屋:更实用的电脑技术知识网站
所在位置:首页 > 编程技术 > PHP编程

一个可以获取网站地理位置,服务器操作系统php

发布时间:2015-05-27 19:30:51作者:知识屋

<?php
error_reporting(E_ERROR);
header(“content-Type: text/html; charset=gb2312″);
set_time_limit(120);
$host = isset($_POST['url']) ? chop(str_replace(‘http://’,”,$_POST['url'])) : ‘ www.zhishiwu.com ’;
$port = isset($_POST['duankou']) ? chop($_POST['duankou']) : ’80′;
$num  = 10;
function microtime_float()
{
        list($usec, $sec) = explode(” “, microtime());
        return ((float)$usec + (float)$sec);
}
function ip138($url)
{
        $host = ‘www.ip138.com’;
        $fp = @fsockopen($host,80,&$errno,&$errstr,3);
        $get = “GET /ips.asp?ip=”.$url.” HTTP/1.1/r/nHost:”.$host.”/r/nConnection: Close/r/n/r/n”;
        @fputs($fp,$get);
        $data = ”;
        while ($fp && !feof($fp))
        $data .= fread($fp, 1024);
        @fclose($fp);
        $s1 = ‘/<table width/=/”80/%/”  border/=/”0/” align/=/”center”/ cellpadding/=/”0/” cellspacing/=/”0/”/>’;
        $s2 = ‘/<//table/>’;
        $tmp = array();
        preg_match_all(“/”.$s1.”([^~]*?)”.$s2.”/i”,$data,$tmp);
        $tmp1 = array();
        preg_match_all(“//<li/>([^~]*?)/<//li/>/i”,$tmp[0][0],$tmp1);
        return $tmp1[0][0].$tmp1[0][1].$tmp1[0][2];
}
function getsoft($host,$port)
{
        $fp = @fsockopen($host,$port,&$errno,&$errstr,3);
        if(!$fp) return ‘unknown’;
        $get = “GET / HTTP/1.1/r/nHost:”.$host.”/r/nConnection: Close/r/n/r/n”;
        @fputs($fp,$get);
        $data = ”;
        while ($fp && !feof($fp))
        $data .= fread($fp, 1024);
        @fclose($fp);
        $array = explode(“/n”,$data);
        $k = 2;
        for($i = 0;$i < 20;$i++)
        {
                if(stristr($array[$i],’Server’)){$k = $i; break;}
        }
        if(!stristr($array[$k],’Server’)) return ‘unknown’;
        else return str_replace(‘Server’,'服务器软件’,$array[$k]);
}
function ping($host,$port)
{
        $time_start = microtime_float();
        $ip = gethostbyname($host);
        $fp = @fsockopen($host,$port,&$errno,&$errstr,1);
        if(!$fp) return ‘Request timed out.<br />’.”/r/n”;
        $get = “GET / HTTP/1.1/r/nHost:”.$host.”/r/nConnection: Close/r/n/r/n”;
        @fputs($fp,$get);
        @fclose($fp);
        $time_end = microtime_float();
        $time = $time_end – $time_start;
        $time = ceil($time * 1000);
        return ‘Reply from ‘.$ip.’: time=’.$time.’ms<br />’;
}
if(isset($_POST['url']) && isset($_POST['duankou']))
{
        echo ip138($host).’<br /><br />’;
        echo ‘<font color=”#FF0000″>’.getsoft($host,$port).’</font><br /><br />’;
        echo ‘Pinging ‘.$host.’ ['.gethostbyname($host).'] with Port:’.$port.’ of data:<br /><br />’.”/r/n”;
        ob_flush();
        flush();
        for($i = 0;$i < $num;$i++)
        {
                echo ping($host,$port);
                ob_flush();
                flush();
                sleep(1);
        }
}
?>
<form method=”POST”>
域名/IP:<input type=”text” name=”url” value=”<?php echo $host;?>” size=”50″>
端口:<input type=”text” name=”duankou” value=”<?php echo $port;?>” size=”10″>
<input type=”submit” value=”ping”>
</form>
 
(免责声明:文章内容如涉及作品内容、版权和其它问题,请及时与我们联系,我们将在第一时间删除内容,文章内容仅供参考)
收藏
  • 人气文章
  • 最新文章
  • 下载排行榜
  • 热门排行榜