一段能用来统计ip访问的代码(自用)包括所在地
<jsp:useBean id="conn1" scope="session" class="china3cts.SnCms" />
<%
conn1.Conn();
//访问IP
String Ip=request.getRemoteAddr();
//获取IP来源算法
String ip1,ip2,ip3,ip4;
int x=Ip.indexOf(".");
ip1=Ip.substring(0,x);
Ip=Ip.substring(x+1,Ip.length());
x=Ip.indexOf(".");
ip2=Ip.substring(0,x);
Ip=Ip.substring(x+1,Ip.length());
x=Ip.indexOf(".");
ip3=Ip.substring(0,x);
ip4=Ip.substring(x+1,Ip.length());
String Ipone=ip1;
String Iptwo=ip1+"."+ip2;
long IpOK;
IpOK=(long)Integer.valueOf(ip1).intValue()*256*256*256+Integer.valueOf(ip2).intValue()*256*256+Integer.valueOf(ip3).intValue()*256+Integer.valueOf(ip4).intValue();
String SIp="pp";
SIp=Long.toString(IpOK);
String sql="Select Top 1 country,city From sncms_ipaddress Where ip1<="+SIp+" and ip2>="+SIp+" Order By ip1";
ResultSet rs=conn1.execute(sql) ;
String country="地区不详";
String city="地址不详";
if (rs.next())
{
country=rs.getString("country");
city=rs.getString("city");
}
if (city==null)
city="";
//统计用IP
Ip=request.getRemoteAddr();
//来源
String Reffer=request.getHeader("Referer");
String RootPath=request.getRealPath("/") ;
String URI=request.getRequestURI() ;
String sPath=request.getQueryString() ;
//分割操作系统等信息
String userAgent="";
userAgent=request.getHeader("User-Agent");
String Browser = "unknown";
String os = "unknown";
//浏览器
Browser=userAgent.split(";")[1].trim();
os =userAgent.split(";")[2].trim();
userAgent=userAgent.toLowerCase();
//操作系统
if (userAgent.indexOf("win") > -1)
{
if (userAgent.indexOf("windows nt 5.0") > -1 || userAgent.indexOf("winnt5.0") > -1)
{
os = "Windows 2000";
}
if (userAgent.indexOf("windows nt 5.1") > -1 || userAgent.indexOf("winnt5.1") > -1)
{
os = "Windows XP";
}
if (userAgent.indexOf("win16") > -1 || userAgent.indexOf("windows 3.") > -1)
{
os = "Windows 3.x";
}
}
//统计用代理
userAgent=request.getHeader("User-Agent");
//out.print("IP:"+Ip+"<br>");
//out.print("Reffer:"+Reffer+"<br>");
//out.print("Browser:"+Browser+"<br>");
//out.print("Os:"+os+"<br>");
//out.print("UserAgent:"+userAgent+"<br>");
//out.print("Country:"+country+"<br>");
//out.print("City:"+city+"<br>");
//out.print("RootPath:"+RootPath+"<br>");
//out.print("URI:"+URI+"<br>");
//out.print("sPath:"+sPath+"<br>");
String Uid="test";
//插入数据库
String ISQL=null;
ISQL="insert into SnCms_Logs (Uid,sPat,Pge,ref,Ip,Adr,Bro,Os,Age) values ('"+Uid+"','"+sPath+"','"+URI+"','"+Reffer+"', ";
ISQL=ISQL+"'"+Ip+"','"+country+city+"','"+Browser+"','"+os+"','"+userAgent+"')";
conn1.update(ISQL);
%>
转载于:https://www.cnblogs.com/ddr888/archive/2006/10/13/528329.html
一段能用来统计ip访问的代码(自用)包括所在地相关推荐
- tomcat配置请求指定html文件路径,Tomcat8限制指定域名或者IP访问(示例代码)
环境: Tomcat8.0.53 目标: 设置为使用指定的域名或者IP访问 1. 设置域名访问 1.1 打开Tomcat下conf目录的server.xml文件,找到以下信息 修改 Engine en ...
- shell统计ip访问情况并分析访问日志
有日志 1.log,部分内容如下: 112.111.12.248 – [25/Sep/2013:16:08:31 +0800]formula-x.haotui.com"/seccode.ph ...
- linux 访客日志ip,shell统计ip访问情况,要求分析访问日志分析。
[题目要求] 有日志 1.log,部分内容如下: 112.111.12.248 – [25/Sep/2013:16:08:31 +0800]formula-x.haotui.com "/se ...
- linux 访问日志ip排序,Linux通过日志文件统计IP访问次数排序
假设我的日志文件内容如下: 218.92.217.53 - - [22/Nov/2017:17:26:27 +0800] "GET /images/rand HTTP/1.0" 2 ...
- ip访问次数统计 nginx_Linux分析Nginx日志统计IP访问次数的shell脚本
平时运维遇到最多的就是nginx的日志分析了,要时常做系统监控,检查IP的访问次数是否有异常,防止恶意访问. 假设我的nginx日志如下: ....... 211.253.43.23 - - [03/ ...
- linux日志生成速率统计,Linux学习29-awk提取log日志信息,统计日志里面ip访问次数排序...
前言 有一段log日志,需从日志里面分析,统计IP访问次数排序前10名,查看是否有异常攻击. 日志提取 如下日志,这段日志包含的信息内容较多,我们希望提取ip,访问时间,请求方式,访问路径(不带参数) ...
- SpringBoot后端统计网站的IP访问次数及地区
项目是用SpringBoot+Vue实现,前后端分离的,前端是用nginx部署的,虽说可以通过Nginx的日志来统计网站的IP的访问次数,但想在前端用图形化的方式来展示是不太可行的,所以我想着是在Sp ...
- Python统计网站访问日志log中的IP信息,并排序。。
Python统计网站访问日志log中的IP信息,并排序,打印排名靠前的IP及访问量.示例代码如下: #!/usr/bin/env pythonipdict = {}file = open(" ...
- 统计日志中ip访问次数并排序的三种方法
1 利用linux中的awk命令 grep "GET aaa.log | awk -F " " '{print $NF}' >d:/test.log 假设日志的最 ...
最新文章
- 《C#精彩实例教程》小组阅读09 -- C#数组与集合
- Flume的Collector
- python tk 当输入数值错误是报错_Python的异常处理
- android-NDK-Opengl
- leetcode103. 二叉树的锯齿形层次遍历
- python爬虫中文乱码_解决Python爬虫处理文件时候中文名称出现乱码问题
- 计算机专业研究生应该如何规划,【图片】2020考研,老学长教你如何规划!【计算机考研吧】_百度贴吧...
- PHP文件下载过滤类
- 第四次博客作业:bookstore缺陷报告
- a.使用new关键字产生对象会调用构造方法_七夕面向对象编程,你知道Java有哪些创建对象的方式吗?...
- 《土豆荣耀》重构笔记(七)控制角色移动并添加音效
- mysql 并行操作_将MySQL去重操作优化到极致之三弹连发(二):多线程并行执行...
- MATLAB人脸识别算法
- 用编程器免拆夹子刷斐讯K2 K2P解决难搞固件 刷BREED 无损原EEPROM
- Apache NiFi 简介
- 【Linux】安装opencv4避坑指南
- 按键精灵---后台按键及鼠标操作
- excel冻结窗口怎么设置_Win7电脑窗口颜色怎么设置成护眼色?简单几步就能搞定...
- 跨平台的会员通 打通品牌任督二脉
- python递归函数例子_Python递归函数经典案例-汉诺塔问题
热门文章
- python : HTML+CSS (定时器轮寻)
- 天猫首页迷思之-jquery实现左侧广告牌图片轮播
- 轻松取得建表和索引的DDL语句
- C#中Socket通信用法实例详解
- 在服务器使用mysql_Linux服务器---使用mysql
- windows关闭svnserver_Windows停SVN服务的搭建和使用(二)-Win32Svn
- 反向传播算法(过程及公式推导)_一文讲透神经网络的反向传播,要点介绍与公式推导...
- log4cplus导致主进程不能退出问题解决
- android 多个handler,Android中的Handler与多线程应用实例
- HDU 2612 (两边一起)