awstats搭建及使用心得

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 工作环境: 操作系统:RedHat 4.8 软件版本:apache是系统自带的(你的服务器上只有一个http服务器),awstats版本是6.5。 我先模拟服务器上只有一个系统自带的http服务器的情况: 将awstats上传到你的linux服务器的/root目录下 ...

工作环境:
操作系统:RedHat 4.8
软件版本:apache是系统自带的(你的服务器上只有一个http服务器),awstats版本是6.5。
我先模拟服务器上只有一个系统自带的http服务器的情况:
将awstats上传到你的linux服务器的/root目录下
mkdir /usr/local/awstats     安装目录
mkdir  /var/lib/awstats       存放数据目录
chmod 755 /usr/local/awstats
mv /root/awstats-6.5.tar.gz /usr/local/awstats
tar zxvf awstats-6.5.tar.gz
mv /usr/local/awstats/awstats-6.5/* .
rm -rf awstats-6.5          目录中的文件我已移动到上层目录,所有空目录直接删除
cd tools/

这里输入none回车

这里输入y回车

这里输入一个域名,例如我们输入www.test.com回车

这里会问保存文件的路径,我们直接回车,默认保存在/etc/awstats下面

上述两处直接提示按回车即可!
vi /etc/awstats/awstats.www.test.com.conf
将51行修改为如下内容
LogFile="/var/log/httpd/access_log"
将203行修改为如下内容
DirData="/var/lib/awstats"              一般默认不用修改
将212行修改为如下内容
DirCgi="/awstats"
将51行修改为如下内容
DirIcons="/awstatsicons"
保存
生产数据文件

修改/etc/httpd/conf/httpd.conf文件,增加如下内容:
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. 

       
    Options None
    AllowOverride None  
    Order allow,deny  
    Allow from all  
  
重启httpd服务
/etc/init.d/httpd restart
浏览器输入http://IP/awstats/awstats.pl?config=www.test.com测试

上图看到的访问是0,再次生成数据文件,看看访问量是否还为0?
/usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=www.test.com

如果需要每5分钟分析一次日志,可以把上述语句写入crontab里面
*/5 * * * * /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=www.test.com > /dev/null 2>&1
还有打开网页上的立即更新按钮,可以将/etc/awstats/awstats.www.test.com.conf文件的
AllowToUpdateStatsFromBrowser=0将0修改为1,然后刷新一下网页可以看到多了一个立即更新按钮

点击这个按钮会提示如下错误,问题暂时未能解决,无论怎么给权限依然报错。
Error: Couldn't open server log file "/var/log/httpd/access_log" : Permission denied

Setup ('/etc/awstats/awstats.www.test.com.conf' file, web server or permissions) may be wrong.
Check config file, permissions and AWStats documentation (in 'docs' directory).
下面我开始演示第二个场景,就是系统上有自带的apache,但是又有一个我们自己编译的apache,目录在/usr/local/apache2,分析这个apache的日志看看呢?前面步骤还是一样,主要是从生成/etc/awstats目录下文件那开始。

和上述只有一个系统自带的apache不一样了,这里我们输入y,它会把我们上面手动在httpd.conf文件里面的内容增加到/usr/local/apache2/conf/httpd.conf里面。

还是和上面一样,域名www.test.com,文件还保存在/etc/awstats目录下,但是它还会重启系统自带的apache,这让我有点不是很理解。
验证是否如我所说真的在httpd.conf文件里面增加内容了?

答案是肯定的,后面修改配置文件,主要修改日志文件的位置,别的它都自动帮你修改好了。最后更新数据文件,我这里就不做操作了。
搭建使用最后总结:
1、打开立即更新按钮,权限都给到,依然报错。可以不用理会,我们直接点击OK那个按钮也一样。
2、假如系统上只有自带的apache,它的awstats安装方法和系统上既有自带的apache,又有编译的apache,安装稍微有点不一样。
3、如果一台机器上既有系统自带的apache,还有编译安装的apache,按照我目前的经验没办法分析两个apache的日志,你只能分析一个自己编译安装的。
4、因为我的web服务器是apache+resin,当更新文件的时候报日志格式不正确,经过修改配置文件的日志格式,将CustomLog "logs/access_log" common的common修改为combined即可!并将以前的日志保存,重启apache服务才能更新文件。

相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
目录
相关文章
|
SQL 关系型数据库 PostgreSQL
把PostgreSQL的表导入SQLite
把PostgreSQL的表导入SQLite
245 0
|
监控 Linux 数据安全/隐私保护
|
2月前
|
传感器 边缘计算 人工智能
2025大模型应用平台选型指南:从个人助手到企业级智能体,5大平台场景化拆解
本文深度评测五大主流大模型平台,结合金融、医疗、制造实战案例,解析Open WebUI、Dify、Ragflow、FastGPT与n8n的定位与优势,提供选型决策树与混合架构实例,助你精准匹配业务需求,避开“全能平台”陷阱,实现高效智能化落地。
|
安全 网络协议
最新可靠好用的DNS服务器地址汇总
如果修改DNS服务器地址就可以访问google等服务,你还等什么?使用免费DNS解析服务除了去掉了运营商的各种广告,还有个最大的好处就是不会重定向或者过滤用户所访问的地址,这样就防止了很多网站被电信、网通劫持,有利于提供访问一些国外网站的成功率 如googlecode,网友应该养成不使用默认DNS的习惯,笔者汇总了常用可靠的DNS服务器地址。
15582 0
|
监控 应用服务中间件 BI
nginx日志统计分析自动报表工具goaccess(推荐)
## 功能描述 - nginx日志统计分析自动报表工具goaccess(推荐) - 网站总访问量统计,按天统计访问量,按页面(不同URL)统计访问量(不包括JS、css),按静态页面统计访问量(包括JS、css),不存在的页面统计访问量 - 按不同的IP统计访问量,按不同的操作系统统计访问量,...
8081 0
|
应用服务中间件 网络安全 nginx
./configure: error: SSL modules require the OpenSSL library.
CentOS 6.5 下 安装 Tengine 执行配置命令./configure  时提示以下错误: ./configure: error: SSL modules require the OpenSSL library.
2175 0
|
算法 Unix Linux
什么是sqfs文件格式?
sqfs,Squash file system,压缩文件系统,.sqfs表示压缩文件系统的文件类型,可引导文件或引用用于UNIX的可引导磁盘映像的文件。
439 5
|
Prometheus Kubernetes 安全
5 款漏洞扫描工具:实用、强力、全面(含开源)(一)
5 款漏洞扫描工具:实用、强力、全面(含开源)
4055 1
5 款漏洞扫描工具:实用、强力、全面(含开源)(一)
|
12月前
|
SQL 存储 关系型数据库
SQL文件导入MySQL数据库的详细指南
数据库中的数据转移是一项常规任务,无论是在数据迁移过程中,还是在数据备份、还原场景中,导入导出SQL文件显得尤为重要。特别是在使用MySQL数据库时,如何将SQL文件导入数据库是一项基本技能。本文将详细介绍如何将SQL文件导入MySQL数据库,并提供一个清晰、完整的步骤指南。这篇文章的内容字数大约在
1249 1
|
存储 监控 Ubuntu
Linux系统之GoAccess实时Web日志分析工具的基本使用
【5月更文挑战第22天】Linux系统之GoAccess实时Web日志分析工具的基本使用
473 1