awstat实现网站访问信息统计
时间:2006-07-17 来源:ghbspecial
说明此文章,可以自由转载,请注明此文章来自www.chinaunix.net
ghb in 2006/07/15
######################################################### 需求:查看网站访问量,来源IP所在地,由哪些搜索引擎进入本网站.
目的:通过以上信息可以及时撑握网站的推广和应用状态
##########################系统环境######################
系统redhat AS 4.2
软件包:
awstats6.5 wget http://awstats.sourceforge.net/files/awstats-6.5.tar.gz cronolog-1.6.2.tar.gz http://cronolog.org/download/index.html GeoIP-1.3.8.tar.gz http://www.maxmind.com/download/geoip/api/c/ Geo-IP-1.27.tar.gz http://www.maxmind.com/download/geoip/api/perl/ Geo-IPfree-0.2.tar.gz http://search.cpan.org/~gmpassos/Geo-IPfree-0.2/ XWhois wget http://search.cpan.org/CPAN/authors/id/V/VI/VIPUL/Net-XWhois-0.90.tar.gz
###############################软件介绍############################# awstats1.65 AWStats是一个专门用来分析Web站台记录档(log)的GPL授权软体,目前也已开始支援分析FTP站台及邮件伺服器的记录档,在Web伺服器软体的部分可以分析IIS的(W3C log format)记录档、Apache的(NCSA combined/XLF/ELF log format or common/CLF log format)记录档,以及其他大部分的web,proxy,wap,streaming伺服器所产生的纪录档。 统计指标说明
1.参观者:按来访者不重复的IP统计,一个IP代表一个参观者.
2.参观次数:一个参观者可能1天之内参观多次(比如:上午一次,下午一次),所以按一定时间内(比如:1个小时) ,不重复的IP数统计,参观者的访问次数.
3.网页数:不包括图片,CSS, JavaScript文件等的纯页面访问总数,但如果一个页面使用了多个帧,每个帧都算一个页面请求.
4.文件数:来自浏览器客户端的文件请求总数,包括图片,CSS,JavaScript等,用户请求一个页面是,如果页面中包含 图片等,所以对服务器会发出多次文件请求,文件数一般远远大于文件数.
5.字节:传给客户端的数据总流量. cronolog-1.6.2.tar.gz 使用cronolog可以使apache日志按时间分割,易于管理和分析。(例如:access_log.20041226) GeoIP-1.3.8.tar Geo-IP-1.27.tar Geo-IPfree-0.2.tar
IP地理信息的插件安装
GeoIP和Geo::IPfree都免费的是国家/IP的影射表,比通过DNS反相解析域名得到的统计准确,而且速度快。GeoIP的API都是免费的,缺省库是免费的,收费的是它的数据更新服务。Geo::IPfree不仅代码是公开的,而且库数据也是公开的,因此,以自己定制. XWhois
可以进行IP反解析的插件 安装顺序
1.cronolog-1.6.2.tar.gz
2.GeoIP-1.3.8.tar.gz
3.Geo-IP-1.27.tar.gz
4.Geo-IPfree-0.2.tar.gz
5.XWhois
6.awstats6.5 #####################################开始安装配置###############################
1.cronolog-1.6.2.tar.gz tar zxvf cronolog-1.6.2.tar.gz
cd cronolog-1.6.2
./configure
make && make install
安装完成以后需要对apache进行适当配置,修改httpd.conf文件 vi /usr/local/apache2/conf/http.conf (rpm安装的apache vi /etc/httpd/conf/http.conf) 修改此项设置
CustomLog "|/usr/local/sbin/cronolog /opt/apache/logs/access_log.%Y%m%d" combined 如果使用了虚拟主机
NameVirtualHost 1.1.1.1:80
<VirtualHost 1.1.1.1:80>
ServerAdmin [email protected]
DocumentRoot /site
ServerName 1.1.1.1
ErrorLog logs/1.1.1.1-error_log
CustomLog "|/usr/local/sbin/cronolog /usr/local/apache2/logs/1.1.1.1-access_log.%Y%m%d" combined
</VirtualHost> 配置后的效果
ls /usr/loca/apache/logs/
1.1.1.1-access_log.20060715 1.1.1.1-error_log 2.GeoIP-1.3.8.tar.gz
tar zxvf GeoIP-1.3.8.tar.gz
cd GeoIP-1.3.8
./configure
make && make install 3. Geo-IP-1.27.tar.gz
tar zxvf Geo-IP-1.27.tar.gz
cd Geo-IP-1.27
perl MakeFile.PL
make && make install
(提示:如果此包译出错也可以不用会理会,能成功最好了,^_^,其实Geo-IPfree 安装成功也可以)
4.Geo-IPfree-0.2.tar.gz
tar xvzf Geo-IPfree-0.2.tar.gz
cd Geo-IPfree-0.2
perl MakeFile.PL
make && make install
5.XWhois
tar -xzvf Net-XWhois-0.90.tar.gz
cd Net-XWhois-0.90
chmod +x Makefile.PL
perl MakeFile.PL
make && make install
6.awstats6.5 tar -xzvf awstats-6.5.tgz cd awstats-6.5/wwwroot/ #将AWStats的cgi目录下的所有文件放到你Apache的cgi目录 cp -r cgi-bin/ /usr/loca/apache/cgi-bin/awstats 根据自己apache 安装目录而定,请自行修改。
如是rpm安装的apache cp -r cgi-bin/ /var/www/cgi-bin/awstats #将其他几个目录复制到你Apache的发布目录 cp -r classes/ css/ icon/ js/ /var/www/html #设置配置文件 cd /var/www/cgi-bin/awstats (进入你刚才的目录)
cp awstats.model.conf common.conf (将默认配置文件更名,供其他配置文件使用) vi common.conf(去掉下面几行前面的#) LoadPlugin="decodeutfkeys"
LoadPlugin="geoip GEOIP_STANDARD"(注意如是前面Geo-IP-1.27.tar.gz安装失败,此注释掉此行,并去掉此行注释LoadPlugin="geoipfree"。)
LoadPlugin="hostinfo" mkdir data(建立一个用于输出分析结果的文件夹)
chmod -R 777 data
vi awstats.aaa.com.conf(建立配置文件)
Include "common.conf"
#apache 日志文件路径
LogFile="/usr/local/apache/logs/1.1.1.1-access_log.%YYYY-24%MM-24%DD-24"(注意自己的时间可能修改为%YYYY-24%MM-24%DD)
SiteDomain="www.aaa.com"
HostAliases="aaa.com"
DefaultFile="index.html"
DirData="/var/www/cgi-bin/awstats/data/" 修改Apache的httpd.conf 在httpd.conf中增加 ScriptAlias /awstats/ "/var/www/cgi-bin/awstats/" 运行命令
./awstats.pl -update -config=aaa.com 打开浏览器查看应该可以看到图形了,恭喜你。。。。。
http://1.1.1.1/awstats/awstats.pl?config=aaa.com 创建crontab
crontab -e
00 12 * * * /var/www/cgi-bin/awstats/awstats.pl -update -config=aaa.com 如果不愿意给别人看到此页面,可以设置访问控制。 这个需要Apache mod_auth模块的支持,先给Apache安装mod_auth模块: ./apxs -c -i /usr/local/src/httpd-2.0.4/..../mod_auth.c 再在httpd.conf 中添加 LoadModule auth_module modules/mod_auth.so 配置需要认证的目录: <Directory "/var/www/cgi-bin/awstats/">
AuthType Basic
AuthName "passwd"
AuthUserFile /etc/httpd/passwd
Require user test
</Directory> 运行如下代码产生用户名为test用户及其密码 /etc/httpd/bin/htpasswd -c /etc/httpd/passwd test 好了,你现在重新启动一下你的apache,然后通过浏览器访问,服务器应该提示你输入用户名和密码,输入密码后,你就可以看到你的日志分析结果了。 此文章的总结借鉴了网上很多文章,感谢你们,特些总结一下,希望可以帮助到兄弟们。。。。
ghb in 2006/07/15
######################################################### 需求:查看网站访问量,来源IP所在地,由哪些搜索引擎进入本网站.
目的:通过以上信息可以及时撑握网站的推广和应用状态
##########################系统环境######################
系统redhat AS 4.2
软件包:
awstats6.5 wget http://awstats.sourceforge.net/files/awstats-6.5.tar.gz cronolog-1.6.2.tar.gz http://cronolog.org/download/index.html GeoIP-1.3.8.tar.gz http://www.maxmind.com/download/geoip/api/c/ Geo-IP-1.27.tar.gz http://www.maxmind.com/download/geoip/api/perl/ Geo-IPfree-0.2.tar.gz http://search.cpan.org/~gmpassos/Geo-IPfree-0.2/ XWhois wget http://search.cpan.org/CPAN/authors/id/V/VI/VIPUL/Net-XWhois-0.90.tar.gz
###############################软件介绍############################# awstats1.65 AWStats是一个专门用来分析Web站台记录档(log)的GPL授权软体,目前也已开始支援分析FTP站台及邮件伺服器的记录档,在Web伺服器软体的部分可以分析IIS的(W3C log format)记录档、Apache的(NCSA combined/XLF/ELF log format or common/CLF log format)记录档,以及其他大部分的web,proxy,wap,streaming伺服器所产生的纪录档。 统计指标说明
1.参观者:按来访者不重复的IP统计,一个IP代表一个参观者.
2.参观次数:一个参观者可能1天之内参观多次(比如:上午一次,下午一次),所以按一定时间内(比如:1个小时) ,不重复的IP数统计,参观者的访问次数.
3.网页数:不包括图片,CSS, JavaScript文件等的纯页面访问总数,但如果一个页面使用了多个帧,每个帧都算一个页面请求.
4.文件数:来自浏览器客户端的文件请求总数,包括图片,CSS,JavaScript等,用户请求一个页面是,如果页面中包含 图片等,所以对服务器会发出多次文件请求,文件数一般远远大于文件数.
5.字节:传给客户端的数据总流量. cronolog-1.6.2.tar.gz 使用cronolog可以使apache日志按时间分割,易于管理和分析。(例如:access_log.20041226) GeoIP-1.3.8.tar Geo-IP-1.27.tar Geo-IPfree-0.2.tar
IP地理信息的插件安装
GeoIP和Geo::IPfree都免费的是国家/IP的影射表,比通过DNS反相解析域名得到的统计准确,而且速度快。GeoIP的API都是免费的,缺省库是免费的,收费的是它的数据更新服务。Geo::IPfree不仅代码是公开的,而且库数据也是公开的,因此,以自己定制. XWhois
可以进行IP反解析的插件 安装顺序
1.cronolog-1.6.2.tar.gz
2.GeoIP-1.3.8.tar.gz
3.Geo-IP-1.27.tar.gz
4.Geo-IPfree-0.2.tar.gz
5.XWhois
6.awstats6.5 #####################################开始安装配置###############################
1.cronolog-1.6.2.tar.gz tar zxvf cronolog-1.6.2.tar.gz
cd cronolog-1.6.2
./configure
make && make install
安装完成以后需要对apache进行适当配置,修改httpd.conf文件 vi /usr/local/apache2/conf/http.conf (rpm安装的apache vi /etc/httpd/conf/http.conf) 修改此项设置
CustomLog "|/usr/local/sbin/cronolog /opt/apache/logs/access_log.%Y%m%d" combined 如果使用了虚拟主机
NameVirtualHost 1.1.1.1:80
<VirtualHost 1.1.1.1:80>
ServerAdmin [email protected]
DocumentRoot /site
ServerName 1.1.1.1
ErrorLog logs/1.1.1.1-error_log
CustomLog "|/usr/local/sbin/cronolog /usr/local/apache2/logs/1.1.1.1-access_log.%Y%m%d" combined
</VirtualHost> 配置后的效果
ls /usr/loca/apache/logs/
1.1.1.1-access_log.20060715 1.1.1.1-error_log 2.GeoIP-1.3.8.tar.gz
tar zxvf GeoIP-1.3.8.tar.gz
cd GeoIP-1.3.8
./configure
make && make install 3. Geo-IP-1.27.tar.gz
tar zxvf Geo-IP-1.27.tar.gz
cd Geo-IP-1.27
perl MakeFile.PL
make && make install
(提示:如果此包译出错也可以不用会理会,能成功最好了,^_^,其实Geo-IPfree 安装成功也可以)
4.Geo-IPfree-0.2.tar.gz
tar xvzf Geo-IPfree-0.2.tar.gz
cd Geo-IPfree-0.2
perl MakeFile.PL
make && make install
5.XWhois
tar -xzvf Net-XWhois-0.90.tar.gz
cd Net-XWhois-0.90
chmod +x Makefile.PL
perl MakeFile.PL
make && make install
6.awstats6.5 tar -xzvf awstats-6.5.tgz cd awstats-6.5/wwwroot/ #将AWStats的cgi目录下的所有文件放到你Apache的cgi目录 cp -r cgi-bin/ /usr/loca/apache/cgi-bin/awstats 根据自己apache 安装目录而定,请自行修改。
如是rpm安装的apache cp -r cgi-bin/ /var/www/cgi-bin/awstats #将其他几个目录复制到你Apache的发布目录 cp -r classes/ css/ icon/ js/ /var/www/html #设置配置文件 cd /var/www/cgi-bin/awstats (进入你刚才的目录)
cp awstats.model.conf common.conf (将默认配置文件更名,供其他配置文件使用) vi common.conf(去掉下面几行前面的#) LoadPlugin="decodeutfkeys"
LoadPlugin="geoip GEOIP_STANDARD"(注意如是前面Geo-IP-1.27.tar.gz安装失败,此注释掉此行,并去掉此行注释LoadPlugin="geoipfree"。)
LoadPlugin="hostinfo" mkdir data(建立一个用于输出分析结果的文件夹)
chmod -R 777 data
vi awstats.aaa.com.conf(建立配置文件)
Include "common.conf"
#apache 日志文件路径
LogFile="/usr/local/apache/logs/1.1.1.1-access_log.%YYYY-24%MM-24%DD-24"(注意自己的时间可能修改为%YYYY-24%MM-24%DD)
SiteDomain="www.aaa.com"
HostAliases="aaa.com"
DefaultFile="index.html"
DirData="/var/www/cgi-bin/awstats/data/" 修改Apache的httpd.conf 在httpd.conf中增加 ScriptAlias /awstats/ "/var/www/cgi-bin/awstats/" 运行命令
./awstats.pl -update -config=aaa.com 打开浏览器查看应该可以看到图形了,恭喜你。。。。。
http://1.1.1.1/awstats/awstats.pl?config=aaa.com 创建crontab
crontab -e
00 12 * * * /var/www/cgi-bin/awstats/awstats.pl -update -config=aaa.com 如果不愿意给别人看到此页面,可以设置访问控制。 这个需要Apache mod_auth模块的支持,先给Apache安装mod_auth模块: ./apxs -c -i /usr/local/src/httpd-2.0.4/..../mod_auth.c 再在httpd.conf 中添加 LoadModule auth_module modules/mod_auth.so 配置需要认证的目录: <Directory "/var/www/cgi-bin/awstats/">
AuthType Basic
AuthName "passwd"
AuthUserFile /etc/httpd/passwd
Require user test
</Directory> 运行如下代码产生用户名为test用户及其密码 /etc/httpd/bin/htpasswd -c /etc/httpd/passwd test 好了,你现在重新启动一下你的apache,然后通过浏览器访问,服务器应该提示你输入用户名和密码,输入密码后,你就可以看到你的日志分析结果了。 此文章的总结借鉴了网上很多文章,感谢你们,特些总结一下,希望可以帮助到兄弟们。。。。
相关阅读 更多 +