求帮助 苹果刷机失败败

cnzz如何通过分渠道来统计的访问量的
全部答案(共1个回答)
传递信息共同组成哦
这倒不会少的 一般你的粉丝看到 或者没有关注你的人 也可能浏览到的
微博是不统计访问量的 也没有来访记录这一项 这个和QQ空间不一样 只有粉丝的数量的区别
itlearner的统计系统是最棒的.而且完全是免费正式版.
文件在你网站程序本地.不用去其它网站申请用户名
下载地址的网页:
充实大家所需要的内容,并且与参与者进行互动,对内容进行有效的整理才能真正提升访问量,否则一闪而过的人,终究只会给你带来一时的人气.
1.广告。广告几乎是门户和大部分网站的生存法宝。不同的网站可以根据自身受众的特点,吸引不同的广告商。
  2.信息内容收费。收费模式有3种:新闻和信息内容...
京东的退款大概多长时间就到账了
答: 慢慢弄。
我最开始只会装游戏;
后来中国有了网络慢慢跟朋友上聊天室聊天;
后来出了OICQ(现在叫QQ),又用那东西聊;
然后上联众玩在线游戏(棋牌类)...
答: 七十年代的计算机网络
X.25 分组交换网:各国的电信部门建设运行
各种专用的网络体系结构:SNA,DNA
Internet 的前身ARPANET进...
大家还关注
确定举报此问题
举报原因(必选):
广告或垃圾信息
激进时政或意识形态话题
不雅词句或人身攻击
侵犯他人隐私
其它违法和不良信息
报告,这不是个问题
报告原因(必选):
这不是个问题
这个问题分类似乎错了
这个不是我熟悉的地区统计工作需要在所有资源之前都执行,那么就可以放到Filter中了。
我们这个过滤器不打算做拦截操作!因为我们只是用来做统计的。
用什么东西来装载统计的数据。Map&String,Integer&
整个网站只需要一个Map即可!
Map什么时候创建(使用ServletContextListener,在服务器启动时完成创建,并只在到ServletContext中),Map保存到哪里!(Map保存到ServletContext中!!!)
Map需要在Filter中用来保存数据
Map需要在页面使用,打印Map中的数据
因为一个网站可能有多个页面,无论哪个页面被访问,都要统计访问次数,所以使用过滤器最为方便。
因为需要分IP统计,所以可以在过滤器中创建一个Map,使用IP为key,访问次数为value。当有用户访问时,获取请求的IP,如果IP在Map中存在,说明以前访问过,那么在访问次数上加1,即可;IP在Map中不存在,那么设置次数为1。
把这个Map存放到ServletContext中!
&?xml version="1.0" encoding="UTF-8"?&
&web-app version="2.5"
xmlns="/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="/xml/ns/javaee
/xml/ns/javaee/web-app_2_5.xsd"&
&filter-name&MyFilter&/filter-name&
&filter-class&com.cug.filter02.MyFilter&/filter-class&
&filter-mapping&
&filter-name&MyFilter&/filter-name&
&url-pattern&/*&/url-pattern&
&/filter-mapping&
&listener&
&listener-class&com.cug.filter02.MyListener&/listener-class&
&/listener&
&/web-app&
package com.cug.filter02;
import java.util.LinkedHashM
import java.util.M
import javax.servlet.ServletC
import javax.servlet.ServletContextE
import javax.servlet.ServletContextL
public class MyListener implements ServletContextListener{
public void contextDestroyed(ServletContextEvent arg0) {
public void contextInitialized(ServletContextEvent arg0) {
ServletContext context = arg0.getServletContext();
Map&String, Integer& ipMap = new LinkedHashMap&String, Integer&();
context.setAttribute("ipMap", ipMap);
package com.cug.filter02;
import java.io.IOE
import java.util.M
import javax.servlet.F
import javax.servlet.FilterC
import javax.servlet.FilterC
import javax.servlet.ServletC
import javax.servlet.ServletE
import javax.servlet.ServletR
import javax.servlet.ServletR
public class MyFilter implements Filter{
private FilterConfig filterC
public void destroy() {
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
ServletContext context = filterConfig.getServletContext();
Map&String, Integer& ipMap = (Map&String, Integer&) context.getAttribute("ipMap");
String ip = request.getRemoteAddr();
if(ipMap.containsKey(ip)){
Integer count = ipMap.get(ip);
ipMap.put(ip,count+1);
ipMap.put(ip,1);
context.setAttribute("ipMap", ipMap);
chain.doFilter(request, response);
public void init(FilterConfig filterConfig) throws ServletException {
this.filterConfig = filterC
&%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%&
&%@taglib prefix="c" uri="/jsp/jstl/core" %&
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
&!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"&
&base href="&%=basePath%&"&
&title&My JSP 'show.jsp' starting page&/title&
&meta http-equiv="pragma" content="no-cache"&
&meta http-equiv="cache-control" content="no-cache"&
&meta http-equiv="expires" content="0"&
&meta http-equiv="keywords" content="keyword1,keyword2,keyword3"&
&meta http-equiv="description" content="This is my page"&
&link rel="stylesheet" type="text/css" href="styles.css"&
&table align="center" width="60%" border="1"&
&th&ip&/th&
&th&count&/th&
&c:forEach items="${applicationScope.ipMap}" var="entry"&
&td&${entry.key }&/td&
&td&${entry.value }&/td&
&/c:forEach&
在JSP里,获取客户端的IP地址的方法是:request.getRemoteAddr()&,这种方法在大部分情况下都是有效的。但是在通过了Apache,Squid等反向代理软件就不能获取到客户端的真实IP地址了。
如果使用了反向代理软件,将&的URL反向代理为/&的URL时,用request.getRemoteAddr()&方法获取的IP地址是:127.0.0.1 或 192.168.1.110&,而并不是客户端的真实IP。
经过代理以后,由于在客户端和服务之间增加了中间层,因此服务器无法直接拿到客户端的IP,服务器端应用也无法直接通过转发请求的地址返回给客户端。但是在转发请求的HTTP头信息中,增加了X-FORWARDED-FOR信息。用以跟踪原有的客户端IP地址和原来客户端请求的服务器地址。当我们访问/index.jsp/&时,其实并不是我们浏览器真正访问到了服务器上的index.jsp文件,而是先由代理服务器去访问http://192.168.1.110:2046/index.jsp&,代理服务器再将访问到的结果返回给我们的浏览器,因为是代理服务器去访问index.jsp的,所以index.jsp中通过request.getRemoteAddr()&的方法获取的IP实际上是代理服务器的地址,并不是客户端的IP地址。于是可得出获得客户端真实IP地址的方法:
String getIpAddr(HttpServletRequest request)
request.getHeader( " x-forwarded-for " );
ip.length()
" unknown " .equalsIgnoreCase(ip))
request.getHeader( " Proxy-Client-IP " );
ip.length()
" unknown " .equalsIgnoreCase(ip))
request.getHeader( " WL-Proxy-Client-IP " );
ip.length()
" unknown " .equalsIgnoreCase(ip))
request.getRemoteAddr();
补充:最后后台可以执行一段python,完成对访问地址的统计和分析:
不完整代码#-*- coding:gbk -*-
import urllib2
url = "/ips138.asp?ip=%s&action=2" % ipaddr
u = urllib2.urlopen(url)
s = u.read()
#Get IP Address
ip = re.findall(r'\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}',s)
print "\n****** Below Result From IP138 Database *****"
print "IP Address:",ip[0]
#Get IP Address Location
result = re.findall(r'(&li&.*?&/li&)',s)
for i in result:
print i[4:-5]
print "*"*45
print "\n"
阅读(...) 评论()
It's not who you are underneath, it's what you do that defines you
Brick walls are there for a reason :they let us prove how badly we want things基于IP的简单网站访问量统计(已更新版优化SQL数据库) - ThinkPHP框架
基于IP的简单网站访问量统计,同一ip下一天只算一次的访问量 代码如下mysql 代码
create table ipcount(
ip int(10) primary key not null
auto_increment,
nowdate varchar(255),
nowdatec varchar(255),
ip varchar(255)
b]控制器代码[[/b]
public function ipcount(){
$ip=get_client_ip(); //获取客户端IP
ini_set('date.timezone','Asia/Shanghai');//设置时区
$date=date('Y-m-d');//获取当前时间
$yesterday=date(&Y-m-d&,strtotime(&-1 day&)); //获取昨天时间
$yesterrow=M('ipcount')-&field('nowdatec')-&where('nowdate=&'.$yesterday.'&')-&select();
$yesterdayc=0;
for ($i=0;$i&count($yesterrow);$i++){
$yesterdayc+=$yesterrow[$i]['nowdatec'];
$row=M('ipcount')-&field('ip')-&where('nowdate=&'.$date.'&')-&select();//查找今天的记录
$add=array(
'nowdatec'=&$n,
'nowdate'=&$date,
'ip'=&$ip,
if(empty($row)){//判断并添加记录
M('ipcount')-&add($add);
$iprow=M('ipcount')-&field('ip')-&where('ip like &%'.$ip.'%& and nowdate=&'.$date.'&')-&select();//查找今天的ip记录
$ipcount=$row[0]['ip'];
if(empty($iprow)){ //判断并更新IP和统计记录
$ipcount=$ipcount.$
$row1=M('ipcount')-&field('nowdatec')-&where('nowdate=&'.$date.'&')-&select();
foreach($row1 as $cd){
$dd= $cd['nowdatec'];
$save=array(
'nowdatec'=&$dd,
'nowdate'=&$date,
'ip'=&$ipcount,
M('ipcount')-&where('nowdate=&'.$date.'&')-&save($save); //判断并更新IP和统计记录
$nowrow=M('ipcount')-&field('nowdatec')-&where('nowdate=&'.$date.'&')-&select();
$nowsun=0;
for ($i=0;$i&count($nowrow);$i++){
$nowsun+=$nowrow[$i]['nowdatec'];
if(!empty($nowsun)){
echo '今天访问量:',$nowsun,'&/br&';//判断输出记录
echo '今天访问量:0&/br&';
$rows=M('ipcount')-&field('nowdatec')-&select();
for ($i=0;$i&count($rows);$i++){
$sun+=$rows[$i]['nowdatec'];
if(!empty($yesterdayc)){
echo '昨天访问量:',$yesterdayc,'&/br&';//判断输出记录
echo '昨天访问量:0&/br&';
if(!empty($sun)){
echo '总访问量:',$sun,'&/br&';//判断输出记录
echo '总访问量:0&/br&';
ThinkPHP 是一个免费开源的,快速、简单的面向对象的 轻量级PHP开发框架 ,创立于2006年初,遵循Apache2开源协议发布,是为了敏捷WEB应用开发和简化企业应用开发而诞生的。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多的原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进,已经成长为国内最领先和最具影响力的WEB应用开发框架,众多的典型案例确保可以稳定用于商业以及门户级的开发。本文讲的是linux下shell及awk统计日志中相同ip的访问次数,
awk统计ip访问次数
现在有一个文件,数据量大概在200多万条记录,想用shell的awk做统计,文件的格式如下
#关键字#URL#IP地址#
test|123|1
test|123|1
test|123|2
awk统计ip访问次数
现在有一个文件,数据量大概在200多万条记录,想用shell的awk做统计,文件的格式如下
#关键字#URL#IP地址#
test|123|1
test|123|1
test|123|2
test2|12|1
test2|123|1
test2|123|2
现在想要统计的结果是:查看同一个关键字和URL总的访问的次数,以及多少个不同的IP,输出到一个文件中
SQL的实现就很简单 select keyword ,url ,count(1),count(distinct IP) group by keyword ,url ,但是数据量太大,报表跑不出来,想在shell下面实现,但是我shell不精通,不知道如何快捷的实现,尤其是那个distinct的那个
理想的结果是:
#关键字#URL#不同IP#搜索次数
wk -F"|" '{a[$1" "$2]++;b[$1" "$2" "$3]++}(b[$1" "$2" "$3]==1){++c[$1" "$2]}END{ for (i in a) print i,c[i],a[i]}' file
test2 123 2 2
test2 12 1 1
test 123 2 3
统计一天apache日志每小时每IP访问次数
日志格式如下:
127.0.0.1 - - [03/Feb/:10 +0800] "GET /ucenterrvicecenter/SCenterRequest.php HTTP/1.0" 302 242
127.0.0.1 - - [03/Feb/:10 +0800] "GET /ucenterrvicecenter/SCenterRequest.php HTTP/1.0" 200 -
111.111.111.35 - - [03/Feb/:32 +0800] "GET /myadmin/ HTTP/1.1" 401 933
111.111.111.35 - root [03/Feb/:33 +0800] "GET /myadmin/ HTTP/1.1" 200 1826
111.111.111.35 - root [03/Feb/:34 +0800] "GET /myadmin/main.php?token=67b1c9d29f9ac1c8d2ca6 HTTP/1.1" 200 7633
111.111.111.35 - - [03/Feb/:34 +0800] "GET /myadmin/css/print.css?token=67b1c9d29f9ac1c8d2ca6 HTTP/1.1" 200 1063
111.111.111.35 - root [03/Feb/:34 +0800] "GET /myadmin/css/phpmyadmin.css.php?token=67b1c9d29f9ac1c8d2ca6&js_frame=right&nocache= HTTP/1.1" 200 20322
111.111.111.35 - root [03/Feb/:34 +0800] "GET /myadmin/navigation.php?token=67b1c9d29f9ac1c8d2ca6 HTTP/1.1" 200 1362
111.111.111.35 - root [03/Feb/:36 +0800] "GET /myadmin/css/phpmyadmin.css.php?token=67b1c9d29f9ac1c8d2ca6&js_frame=left&nocache= HTTP/1.1" 200 3618
111.111.111.35 - root [03/Feb/:38 +0800] "GET /myadmin/navigation.php?server=1&db=ucenter&table=&lang=zh-utf-8&collation_connection=utf8_unicode_ci HTTP/1.1" 200 9631
代码如下:
[root@localhost sampdb]# awk -vFS="[:]" '{gsub("-.*","",$1);num[$2" "$1]++}END{for(i in num)print i,num[i]}' data1
14 127.0.0.1
14 111.111.111.35
awk统计日志中相同ip的访问次数
现有一日志,需要统计出每个ip访问的次数
180.153.114.199 - - [03/Jul/:43 +0800] GET /wp-login.php?redirect_to=http%3A%2F%%2Fwp-admin%2Fplugin-install.php%3Ftab%3Dsearch%26s%3DVasiliki%26plugin-search-input%3D%25E6%E7%25B4%25A2%25E6%258F%%25BB%25B6&reauth=1 HTTP/1.1 200 2355 - Mozilla/4.0 -
101.226.33.200 - - [03/Jul/:52 +0800] GET /wp-admin/plugin-install.php?tab=search&type=term&s=Photogram&plugin-search-input=%E6%90%9C%E7%B4%A2%E6%8F%92%E4%BB%B6 HTTP/1.1 302 0 - Mozilla/4.0 -
101.226.33.200 - - [03/Jul/:52 +0800] GET /wp-login.php?redirect_to=http%3A%2F%%2Fwp-admin%2Fplugin-install.php%3Ftab%3Dsearch%26type%3Dterm%26s%3DPhotogram%26plugin-search-input%3D%25E6%E7%25B4%25A2%25E6%258F%%25BB%25B6&reauth=1 HTTP/1.1 200 2370 - Mozilla/4.0 -
113.110.176.131 - - [03/Jul/:57 +0800] GET /wp-content/themes/catjia-lio/images/menu_hover_bg.png HTTP/1.1 304 0 /wp-content/themes/catjia-lio/style.css Mozilla/5.0 (Windows NT 6.2; WOW64; rv:21.0) Gecko/ Firefox/21.0 -
180.153.205.103 - - [03/Jul/:59 +0800] GET /wp-admin/options-general.php HTTP/1.1 302 0 - Mozilla/4.0 -
180.153.205.103 - - [03/Jul/:59 +0800] GET /wp-login.php?redirect_to=http%3A%2F%%2Fwp-admin%2Foptions-general.php&reauth=1 HTTP/1.1 200 2269 - Mozilla/4.0 -
101.226.51.227 - - [03/Jul/:07 +0800] GET /wp-admin/options-general.php?settings-updated=true HTTP/1.1 302 0 - Mozilla/4.0 -
101.226.51.227 - - [03/Jul/:07 +0800] GET /wp-login.php?redirect_to=http%3A%2F%%2Fwp-admin%2Foptions-general.php%3Fsettings-updated%3Dtrue&reauth=1 HTTP/1.1 200 2291 - Mozilla/4.0 -
咋看之下,日志记录的东西太多了,从何入手?
相信不少人知道可以通过awk提取第一列数据出来,即ip地址。
可是提取出来之后呢?怎么统计每个ip出现的次数?
要说复杂还挺复杂,不过用多了就简单了。
# awk '{a[$1]+=1;}END{for(i in a){print a[i]" "}}' _access.log
2 180.153.206.26
120 113.110.176.131
2 101.226.33.200
2 101.226.66.175
2 112.65.193.16
2 101.226.51.227
2 112.64.235.86
2 101.226.33.223
1 101.227.252.23
2 180.153.205.103
2 101.226.33.216
2 112.64.235.89
4 180.153.114.199
2 112.64.235.254
2 180.153.206.34
如果要保存结果,则可以通过重定向保存到文本里。
现在已经统计出每个相同ip的次数了,但是如果数据多的话看起来还比较混乱,比如想要知道访问次数最多的是哪个ip呢?
那就加个sort排序吧
# awk '{a[$1]+=1;}END{for(i in a){print a[i]" "}}' _access.log |sort
1 101.227.252.23
120 113.110.176.131
2 101.226.33.200
2 101.226.33.216
2 101.226.33.223
2 101.226.51.227
2 101.226.66.175
2 112.64.235.254
2 112.64.235.86
2 112.64.235.89
2 112.65.193.16
2 180.153.205.103
2 180.153.206.26
2 180.153.206.34
4 180.153.114.199
这样一看,貌似排序了,但仔细一看,出现120次的ip怎么排在第二位,不是应该排在最后么?
其实这里还需要加个参数-g,否则排序会按第一个字符来排序,就会出现如上的情况。
看看加个-g参数后的结果
# awk '{a[$1]+=1;}END{for(i in a){print a[i]" "}}' _access.log |sort -g
1 101.227.252.23
2 101.226.33.200
2 101.226.33.216
2 101.226.33.223
2 101.226.51.227
2 101.226.66.175
2 112.64.235.254
2 112.64.235.86
2 112.64.235.89
2 112.65.193.16
2 180.153.205.103
2 180.153.206.26
2 180.153.206.34
4 180.153.114.199
120 113.110.176.131
嗯,这才是想要的结果。。
以上是云栖社区小编为您精心准备的的内容,在云栖社区的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索日志
shell awk、shell awk命令、awk shell 传递变量、linux shell awk、awk引用shell变量,以便于您获取更多的相关知识。
为您提供简单高效、处理能力可弹性伸缩的计算服务,帮助您快速构建更稳定、安全的应用,提升运维效率,降低 IT 成本...
RDS是一种稳定可靠、可弹性伸缩的在线数据库服务。支持MySQL、SQL Server、PostgreSQL、高...
云栖社区()为您免费提供相关信息,包括
的信息,还有shell awk、shell awk命令、awk shell 传递变量、linux shell awk、awk引用shell变量等
,所有相关内容均不代表云栖社区的意见!

我要回帖

更多关于 苹果刷机请求shsh失败 的文章

 

随机推荐