Awstats
c是一个非常简洁而且强大的统计工具。它可以统计您站点的如下信息:
一:访问量,访问次数,页面浏览量,点击数,数据流量等精确到每月、每日、每小时的数据
二:访问者国家、访问者IP、操作系统、浏览器等
三:Robots/Spiders的统计
四:纺客持续时间
五:对不同Files type 的统计信息
六:Pages-URL的统计
七:其它信息(搜索关键字等等)
http://awstats.sourceforge.net/ awstats官方网站
http://www.perl.com/ perl官方网站
[root@localhost awstats]# ls
awstats-7.0.tar.gz perl-5.16.1.tar.gz
安装perl
Awstats基于Perl的WEB日志分析工具,网上关于它的介绍还是比较多的,因为是基于perl开发的,在管在 windows还是linux下都需要先安装perl环境。所以,我们先安装perl 。其实,还需要一个apache环境,在上一节中已经进行了安装讲解。
[root@localhost awstats]# tar xvfz perl-5.16.1.tar.gz 解压
[root@localhost awstats]# cd perl-5.16.1 进入目录
[root@localhost perl-5.16.1]# sh Configure -de
[root@localhost perl-5.16.1]#make 编译
[root@localhost perl-5.16.1]# make test
[root@localhost perl-5.16.1]# make install 安装
config.sh Policy.sh 为以前安装时的配置文件,新安装或升级安装时需要将其删除。
sh Configure -de 安装使用默认配置,一般而言将会 ok
make test 执行make命令, 然后make根据test目标规则, 执行规定的操作。
安装完成后 perl 所在目录为 /usr/local/lib/perl5, perl 执行文件在 /usr/local/bin 中。
安装awstats
解压awstats
[root@localhost awstats]# tar xvfz awstats-6.4.tgz
[root@localhost awstats]# mkdir /etc/awstats
[root@localhost awstats]# mkdir /var/lib/awstats
上面创建的两个目录都将在后面的配置中用到,一个用于存放站点日志分析的配置文件,一个用于存放日志数据信息。
[root@localhost awstats]# cp -R ./awstats-7.0 /usr/local/
-R 表示复制目录及目录内的所有项目到/usr/local/目录下
[root@localhost test]# mv awstats-7.0 awstats 进行一个重命名,便于操作而已。
配置awstats
[root@localhost tools]# pwd
/usr/local/awstats//tools
Awstats的配置有自带的配置工具awstats_configure.pl ,首先用vi打开configure.pl文件,看看第一行有关perl运行环境的配置是否正确。
[root@localhost tools]# vi awstats_configure.pl
#!/usr/bin/perl
.............
[root@localhost tools]# pwd
/usr/local/awstats/tools
[root@localhost tools]# perl awstats_configure.pl 运行配置文件
Do you want to continue setup from this NON standard directory [yN] ? 你是否安装非标准目录【y / n】?..............file (required if first install) [y/N] ? 文件(如果需要先安装)【y / n】?............ your web site ,virtual server or profile name: 你的网站服务器名或文件名>demo............ directory path to store config file(s) (enter for default): 目录路径存储配置文件(填写默认值)> /etc/awstats...........然后,两个回车配置完成。
awstats_configure.pl工具会自动修改您的apache配置,在apache的配置文件httpd.conf文件中自动修改下面信息
[root@localhost conf]# pwd
/usr/local/apache/conf
[root@localhost conf]# vi httpd.conf
awstats_configure.pl自动在httpd.conf文件最底部添加了以下内容:
# Directives to allow use of AWStats as a CGI
#
Alias /awstatsclasses "/usr/local/awstats/wwwroot/classes/"
Alias /awstatscss "/usr/local/awstats/wwwroot/css/"
Alias /awstatsicons "/usr/local/awstats/wwwroot/icon/"
ScriptAlias /awstats/ "/usr/local/awstats/wwwroot/cgi-bin/"
#
# This is to permit URL access to scripts/files in AWStats directory.
#
<Directory "/usr/local/awstats/wwwroot">
Options None
AllowOverride None
Order allow,deny
Allow from all
</Directory>
awstats_configure.pl还将根据安装过程中您的回答(要分析的网站名称)信息,自动生产 /etc/awstats/awstats.index.conf文件
[root@localhost awstats]# pwd
/etc/awstats
[root@localhost awstats]# ls
awstats.index.conf
[root@localhost awstats]# vi awstats.index.conf 配置下面文件
................LogFile="/usr/local/apache/logs/access_log" 改为apache的日志文件 ....
这样就完成了awstats的安装与配置工作。
分析日志
[root@localhost cgi-bin]# pwd
/usr/local/awstats/wwwroot/cgi-bin
[root@localhost cgi-bin]# chmod +x awstats.pl 加可执行权限
[root@localhost cgi-bin]# perl /awstats.pl -update -config=demo
Create/Update database for config "/etc/awstats/awstats.index.conf" by AWStats version 7.0 (build 1.971)From data in log file "/usr/local/apache/logs/access_log"...Phase 1 : First bypass old records, searching new record...Searching new records from beginning of log file...Jumped lines in file: 0Parsed lines in file: 3 Found 0 dropped records, Found 0 comments, Found 0 blank records, Found 3 corrupted records, Found 0 old records, Found 0 new qualified records.
在浏览器里输入:
http://localhost/awstats/awstats.pl?config=demo
然后就可以看到生成的日志报告了
有可能与到下面的错误提示,不管你有没有遇到,反正我是遇到了!:
Not FoundThe requested URL /awastats/awastats.pl was not found on this server.----------------------------------------------------------------------------- Apache/2.2.3 (CentOS) Server at 192.168.0.105 Port 80
上面的错误一直没找到原因,于是,找了另一种办法来访问日志文件。
[root@localhost cgi-bin]# pwd
/usr/local/awstats/wwwroot/cgi-bin
[root@localhost cgi-bin]# perl awstats.pl -update -config=demo -output -staticlinks >/var/www/html/awastats.html
这样我们把日志文件保存到apache 服务器下面,名为awastats.html
在浏览器里输入:
http://localhost/awstats.html
一样可以访问日志文件噢!
转载于:https://blog.51cto.com/zlong37/1400167
相关文章:

fixture详细介绍-作为参数传入,error和failed区别
前言 fixture是pytest的核心功能,也是亮点功能,熟练掌握fixture的使用方法,pytest用起来才会得心应手! fixture简介 fixture的目的是提供一个固定基线,在该基线上测试可以可靠地和重复地执行。fixture提供了区别于传统…

哈佛结构和冯诺依曼结构区别。
哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储 器中读取数据,并进行下一步的操作(通常是执行)。程序指令存储和…

js 数据函数
//shift:删除原数组第一项,并返回删除元素的值;如果数组为空则返回undefined var a [1,2,3,4,5]; var b a.shift(); //a:[2,3,4,5] b:1 //unshift:将参数添加到原数组开头,并返回数组的长度…

Java项目:平行志愿管理系统(java+Springboot+Maven+mybatis+Vue+Mysql)
源码获取:博客首页 "资源" 里下载! 一、项目简述本系统功能包括: 系统管理,招生计划,学生管理,录取结果,自动分配,调剂管理等等。 二、项目运行 环境配置: J…

冒泡 MS Azure 不便宜。。。
一直在等 MS Azure 中国开卖, 最近有消息说正式商用了。。。 看看去,ok 发现官方网站 很奇葩。没有购买的地方 说毛线 啊 卧槽 欺骗感情还是吊人胃口? 好看了一下VM的价格,卧槽真不便宜。 即使是 768 MB的也要 0.22RMB 小时。本来…

数据库的概念以及MYSQL的安装和卸载
一、数据库的基本概念: 1、什么是数据库? DataBase,简称DB。是用来存储和管理数据的仓库。 2、数据库的特点: 持久化存储数据的。其实数据库就是一个文件系统。方便存储和管理数据使用了统一的方式操作数据库——SQL 3、最热门…

对ARM异常(Exceptions)的理解
对ARM异常(Exceptions)的理解 1 .对 ARM 异常( Exceptions )的理解 所有的系统引导程序前面中会有一段类似的代码,如下: .globl _start ;系统复位位置 _s…

Java项目:花店商城系统(java+Springboot+Maven+mybatis+Vue+Mysql)
源码获取:博客首页 "资源" 里下载! 一、项目简述 本系统功能包括: 商品的分类展示,用户的注册登录,购物车,订单结算,购物车加减,后台商品管理,分类管理&#x…

简单又好看的按钮,扁平化按钮。
原文 http://blog.csdn.net/peijiangping1989/article/details/19333779主题 安卓开发今天分享一下流行的扁平化按钮。完全不需要用到图片哦。效果图如下: 里面有2个按钮都是一样的模式。只要修改的色值就可以。下面跟我来更新你的UI吧。 首先编写 button.xml 代码…

MahApps.Metro
ModernUI for WPF Mahapps.metro home Mahapps.metro Quick start Mahapps.metro controls转载于:https://www.cnblogs.com/xakml/p/3682173.html

用herl工具解决微信内链接或二维码可直接用外部浏览器打开
很多朋友问我怎么解决微信内点击链接或扫描二维码可以直接跳出微信在外部浏览器打开网页链接,其实这并不难,只要我们实现微信跳转功能即可。 下面给大家推荐 herl工具(http://www.nicejump.cn/) 使用步骤 1. 用浏览器打开我们的工…

shell之“/dev/null 21”
shell中可能经常能看到:>/dev/null 2>&1 命令的结果可以通过%>的形式来定义输出 分解这个组合:“>/dev/null 2>&1” 为五部分。 1:> 代表重定向到哪里,例如:echo "123" &g…
Java项目:角色权限后台脚手架系统(java+Springboot+Maven+myBaits-Plus+Vue+Element-UI+Mysql)
源码获取:博客首页 "资源" 里下载! Springboot框架myBaits-PlusMySQL实现的角色权限后台管理脚手架系统实战项目,实现的是所有系统最基础的后台管理功能,有了这个脚手架,以后开发别的项目就在这上面快速增加…

30+程序员,平时都忙些什么事情?平时都想些什么?以后有啥计划?
很多人都说,30岁以后了,写程序还有前途嘛?我有时候也迷茫,但是迷茫过后,总会给自己寻找方向,每个人都需要有个信念、没有信念,活着就没意思,无聊,觉得没奔头了。 废话少说…

用于制图、写电子邮件、创建条形码控件Aspose.Total
2019独角兽企业重金招聘Python工程师标准>>> Aspose.Total 提供了 Aspose 可以使用的任何组件,以及你每年订阅中发布的所有新组件。通过它,你能够有计划地操纵一些商业中最流行的文件格式:Word, Excel, PowerPoint, Project, PDF …

循环for语句 if语句
if语句: if(表达式){ 代码 }else if(表达式){ 代码 } for循环: for(var i0; i<10; i){ alert(1); (弹窗) } if语句: if(表达式){ 代码 }else if(表达式){ 代码 } for循环: for(var i0; i<10; i){ alert(1); (弹窗…

Linux中的粘滞位
Linux中的粘滞位 Sticky 位是一个访问权限标志位,可以用来标示文件和路径。 历史: 粘滞位是在1974年Unix的第5版中引入的,用来设置可执行文件。当可执行文件设置粘滞位之后,它能够指示操作系统在程序退出后,保留程序…

Java项目:实现权限管理系统(java+SpringBoot+MyBatis+AOP+LayUI+Mysql)
源码获取:博客首页 "资源" 里下载! springbootmybatis使用面向切面编程(AOP)实现的权限管理系统。 共五个模块,角色管理,菜单管理,实验室管理,学生管理,管理员…

阅读10、11、12章
第10章 假设用户交付给我们一个 任务,然后我们通过调研的出来的结果进行设计,最后的结果跟用户想象的不一样,这应该怎么做? 第11章 团队合作真的需要有那么繁琐的步骤(例如每日例会)吗? 第12章 …

SQL删除重复数据方法
原文:SQL删除重复数据方法例如: id name value 1 a pp 2 a pp 3 b iii 4 b pp 5 b …

#pragma once与#ifndef
在C/C中,在使用预编译指令#include的时候,为了防止重复引用造成二义性的两种方法。 #ifndef 它不光可以保证同一份文件不会被包含两次,也能够保证不同文件完全相同的内容不会被包含两次。但,同样的,如果自定义的宏名不…

grep 在HP-UX下的递归查找
grep 在HP-UX下的递归查找Linux: man grep 可以看到 -r 选项-R, -r, --recursiveRead all files under each directory, recursively; this is equivalent to the -d recurse option.即:-r 选项可以查找指定目录下每个子目录下的所有文件eg:grep -r "28281&quo…

Java项目:实现个人博客系统(java+springboot+mybatis+redis+vue+elementui+Mysql)
源码获取:博客首页 "资源" 里下载! springbootmybatis前端vue,使用前后端分离架构实现的个人博客系统,共7个模块,首页,写博客,博客详情页,评论管理,文章分类&a…

软件工程--总作业(已经完成)
用户调研:http://www.cnblogs.com/OuZeBo/p/4580146.htmlalpha阶段总结:http://www.cnblogs.com/OuZeBo/p/4580146.html对其他组评价的反馈:已评论其他组,暂时没有其他组对我们组进行评论描述项目的典型用户与场景:已完…

linux各文件夹的作用域
目錄應放置檔案內容/bin系統有很多放置執行檔的目錄,但/bin比較特殊。因為/bin放置的是在單人維護模式下還能夠被操作的指令。在/bin底下的指令可以被root與一般帳號所使用,主要有:cat, chmod, chown, date, mv, mkdir, cp, bash等等常用的指…

LOJ 2721 「NOI2018」屠龙勇士——扩展中国剩余定理
题目:https://loj.ac/problem/2721 1.注意别一输入 p[ i ] 就 a[ i ] % p[ i ] ,因为在 multiset 里找的时候还需要真实值。 2.注意用 multiset 。并且,因为要 upper_bound( a[ i ] ) ,而 a[ i ] 是一个 long long 类型的…

setuid和setgid
setuid 和 setgid (全称分别是:set user ID upon execution 和 set group ID upon execution)是Unix的访问权限标志位,它允许 用户以可执行文件owner或group的权限来运行这个可执行文件。它们经常适用于:为了运行特定的任务,可以允…

Java项目:宠物医院预约挂号系统(java+JSP+Spring+SpringBoot+MyBatis+html+layui+maven+Mysql)
源码获取:博客首页 "资源" 里下载! 一、项目简述功能包括: 用户分为宠物,医生,管理员,宠物主人可进行注册选择医生挂号,选择日期,选择号源,医生可进行宠物接诊…

大智慧面试经验
15-06-18下午1点,大智慧面试; 面试题全英文,第一部分基础的,诸如echo print printf的区别,include与require的区别等; 第二部分细节方面的,如在string中\n的意义,ucwords函数&#x…

Android 获取apk签名的fingerprint
为什么80%的码农都做不了架构师?>>> 假定安装了JDK,如果想查HelloWorld.apk所使用的签名的fingerprint,可以这样做:1. 查找apk里的rsa文件 (Windows) > jar tf HelloWorld.apk |findstr RSA…