wucong0 2013-06-06
Awstats 是一款基于 Perl 的 WEB 日志分析工具,而 JAWStats 是一款基于 PHP 的统计套件,旨在为 Awstats 提供更为精美图形界面。
Awstats 安装非常简单,但必须先确认你服务器上 Perl 的环境已经就绪。
考虑到网站流量不大,每日一次的 Nginx 日志切割也可以省略了。。。
1 2 3 4 | wget http: //prdownloads.sourceforge.net/awstats/awstats-7.0.tar.gz tar -zxf awstats- 7.0 .tar.gz mv awstats- 7.0 /usr/local/awstats chown -R root:root /usr/local/awstats |
使用 awstats_configure.pl 向导工具,生成每个网站的配置文件。
1 2 | cd/usr/local/awstats/tools ./awstats_configure.pl |
1) 输入 none 然后回车
2) 输入 y 确认创建配置文件
3) 输入配置文件名称,一般输入域名。
4) 配置文件使用默认路径 /etc/awstats
5) 按回车继续
6) 按回车完成配置文件的创建
Awstats 支持基于日期变化的动态日志文件,具体可以看注释。
1 2 | vim/etc/awstats/awstats.wangyan.org.conf LogFile="/usr/local/nginx/logs/wangyan.org/access.log"(51行左右) |
1 2 3 | #创建存放数据的目录mkdir-p/ var /lib/awstats #方法一:为指定的网站生成数据。/usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update-config=wangyan.org #方法二:为所有网站生成数据/usr/local/awstats/tools/awstats_updateall.pl now |
5. 输出统计结果静态页面 (可选)
若在 Apache 上,那就可以直接打开网页查看统计了,当然 Nginx 也可以省略此步,因为 JAWStats 还尚未出场呢。。。
1 2 | mkdir -p /var/www/awstats/ # 创建存放结果的目录 /usr/local/awstats/tools/awstats_buildstaticpages .pl -update-config= test .com -lang=cn - dir = /root/tmp -awstatsprog= /usr/local/awstats/wwwroot/cgi-bin/awstats .pl |
/usr/local/awstats/tools/awstats_buildstaticpages.pl Awstats 静态页面生成工具
-update -config=test.com 更新配置项
-lang=cn 语言为中文
-awstatsprog=/usr/local/awstats/wwwroot/cgi-bin/awstats.pl Awstats 日志更新程序路径。
这个好办,设为每小时更新一次。
1 2 | crontab -e 0 ****/usr/local/awstats/tools/awstats_updateall.pl now |
JAWStats 是基于 Awstats 统计数据的,但其界面更为强悍,有了JAWStats 你甚至可以抛弃第三方统计了。
1 2 3 4 5 | wget http://static.jawstats.com/src/jawstats-0.7beta.tar.gz mkdir /www/html/stats/ tar -zxf jawstats-0.7beta.tar.gz -C /www/html/stats/ cd/var/www/stats/ cp config.dist.php config.php |
官方配置说明见:http://www.jawstats.com/documentation
jawstats 是支持多站点的,每个 $aConfig 对应一个站点,并可以自由切换。
1 2 3 4 5 6 7 | <?php // core config parameters$sDefaultLanguage="zh-cn";// 设置默认语言 $sConfigDefaultView= "thismonth.all" ; $bConfigChangeSites= false ; //是否可以更换站点 $bConfigUpdateSites= false ; //是否可以更新统计数据 $sUpdateSiteFilename= "xml_update.php" ; // individual site configuration $aConfig[ "site1" ]=array( // site1 网站域名(注意不能乱填)"statspath"=>"/var/lib/awstats/",//awstats 统计数据目录"updatepath"=>"/usr/local/awstats/wwwroot/cgi-bin/awstats.pl/",//用于更新统计数据"siteurl"=>"http://test.com",//点击首页标题后会前往这个地址"sitename"=>"test.com",//首页标题"theme"=>"default","fadespeed"=>250,"password"=>"my-1st-password",//更新统计数据需要输入这个密码"includes"=>"","language"=>"zh-cn"); ?> |
首先下载 jawstats 多国语言包,解压缩后上传替换 lang 目录。
http://www.jawstats.com/src/languagepack.zip
需要注意的是,你要修改 translations.php 文件的编码为UTF-8,不然全乱码了。
另外修改汉化文件,也是translations.php,不能只修改zh-cn.js文件。
Nginx 支持为��录添加密码认证,若不想所有人都能访问到你的统计结果,那继续下面步骤吧。。。
1) 使用apache 的 htpasswd 来创建密码文件。
1 | 语法:htpasswd -c /home/test/.htpasswds 用户名 密码 |
2) 在Nginx的server字段内添加以下内容
1 2 3 4 5 6 7 8 9 10 11 | location ~ /stats { root /var/www; location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name; include fastcgi_params; } auth_basic "JAWStats"; auth_basic_user_file /home/test/.htpasswds; } |
输入 https://yourdomain/stats/ 便可以访问了。