centos 7 部署awstats 网站访问检测

一、基础环境准备(两种安装方式都要做)

bash

# 安装必要依赖
yum install -y httpd perl mod_perl perl-Time-HiRes perl-DateTime
systemctl enable httpd  # 设置 Apache 开机自启
systemctl start httpd   # 启动 Apache

二、安装 AWStats(二选一)

方式 1:yum 安装(推荐,简单快速)

bash

yum install -y awstats
方式 2:源码安装(自定义版本,灵活)

bash

# 1. 下载最新版本(访问 https://github.com/eldon/awstats/releases 找最新 tar.gz 链接)
cd /tmp
wget https://github.com/eldon/awstats/archive/refs/tags/7.8.tar.gz  # 若 7.8 失效,换其他版本# 2. 解压并移动到指定目录
tar -zxvf 7.8.tar.gz
mv awstats-7.8 /usr/local/awstats# 3. 创建软链接(方便 Apache 访问)
ln -s /usr/local/awstats/wwwroot/cgi-bin/ /var/www/cgi-bin/awstats
ln -s /usr/local/awstats/wwwroot/icon/ /var/www/html/awstatsicons

三、配置 AWStats(关键步骤)

1. 创建站点配置文件

bash

# yum 安装路径
cp /etc/awstats/awstats.model.conf /etc/awstats/awstats.yourdomain.conf# 源码安装路径
cp /usr/local/awstats/config/awstats.model.conf /usr/local/awstats/config/awstats.yourdomain.conf

  • 替换 yourdomain 为你的域名或服务器 IP(如 10.10.10.128)。
2. 编辑配置文件

bash

# yum 安装路径
vim /etc/awstats/awstats.yourdomain.conf# 源码安装路径
vim /usr/local/awstats/config/awstats.yourdomain.conf

修改以下关键参数(根据实际情况调整):

conf

LogFile="/var/log/httpd/access_log"   # Apache 访问日志路径(默认)
SiteDomain="10.10.10.128"             # 你的域名或服务器 IP
HostAliases="localhost 127.0.0.1"     # 别名
DirData="/var/lib/awstats"            # 统计数据存储目录
Lang="cn"                             # 启用中文界面(新增)

四、配置 Apache 访问(两种安装方式不同)

方式 1:yum 安装的配置

bash

# 1. 创建 Apache 配置文件
vim /etc/httpd/conf.d/awstats.conf# 2. 写入以下内容(限制特定 IP 访问,增强安全)
<Directory "/usr/share/awstats/wwwroot">Options NoneAllowOverride NoneOrder allow,denyAllow from 127.0.0.1        # 允许本地访问(必须)Allow from 10.10.10.128     # 允许服务器自身 IP 访问# 如需远程访问,添加你的客户端 IP:Allow from 192.168.1.100
</Directory># 3. 重启 Apache

要加上前面的部署

以下是 CentOS 7 完整部署 AWStats 并设置中文界面的流程,涵盖 环境准备、安装(yum / 源码)、配置、中文设置、验证 全流程,按步骤执行即可:


一、环境准备(必做)

bash

# 1. 安装基础依赖
yum install -y httpd perl mod_perl perl-Time-HiRes perl-DateTime# 2. 启动并设置 Apache 开机自启
systemctl enable httpd
systemctl start httpd# 3. 关闭防火墙(测试环境,生产环境需按需开放端口)
systemctl stop firewalld
systemctl disable firewalld

二、安装 AWStats(二选一,推荐 yum)

方式 1:yum 安装(简单快速)

bash

yum install -y awstats

方式 2:源码安装(自定义版本)

bash

# 1. 下载 AWStats(访问 https://github.com/eldon/awstats/releases 找最新版本)
cd /tmp
wget https://github.com/eldon/awstats/archive/refs/tags/7.8.tar.gz  # 示例版本,可替换# 2. 解压并移动到指定目录
tar -zxvf 7.8.tar.gz
mv awstats-7.8 /usr/local/awstats# 3. 创建软链接(让 Apache 能访问 CGI 和图标)
ln -s /usr/local/awstats/wwwroot/cgi-bin/ /var/www/cgi-bin/awstats
ln -s /usr/local/awstats/wwwroot/icon/ /var/www/html/awstatsicons

三、配置 AWStats(关键步骤)

1. 创建站点配置文件

bash

# yum 安装路径(通用)
cp /etc/awstats/awstats.model.conf /etc/awstats/awstats.yourdomain.conf# 源码安装路径(仅源码安装时用)
# cp /usr/local/awstats/config/awstats.model.conf /usr/local/awstats/config/awstats.yourdomain.conf

  • 替换 yourdomain 为你的 域名或服务器 IP(如 10.10.10.128)。

2. 编辑配置文件

bash

# yum 安装路径(通用)
vim /etc/awstats/awstats.yourdomain.conf# 源码安装路径(仅源码安装时用)
# vim /usr/local/awstats/config/awstats.yourdomain.conf

修改以下关键参数(根据实际情况调整):

conf

LogFile="/var/log/httpd/access_log"   # Apache 访问日志路径(默认)
SiteDomain="10.10.10.128"             # 你的域名或服务器 IP
HostAliases="localhost 127.0.0.1"     # 别名(可追加其他域名/IP)
DirData="/var/lib/awstats"            # 统计数据存储目录
Lang="cn"                             # 启用中文界面(核心!)

3. 创建数据存储目录

bash

mkdir -p /var/lib/awstats
chown -R root:root /var/lib/awstats  # 权限设置(yum 安装默认用户是 root)

四、配置 Apache 访问(两种安装方式不同)

方式 1:yum 安装的 Apache 配置

bash

# 1. 创建 Apache 配置文件
vim /etc/httpd/conf.d/awstats.conf# 2. 写入以下内容(限制访问 IP,增强安全)
<Directory "/usr/share/awstats/wwwroot">Options NoneAllowOverride NoneOrder allow,denyAllow from 127.0.0.1        # 允许本地访问(Cron 任务需要)Allow from 10.10.10.128     # 允许服务器自身 IP 访问# 如需远程访问,添加你的客户端 IP:Allow from 192.168.1.100
</Directory># 3. 重启 Apache 生效
systemctl restart httpd

要想外部浏览器访问需要添加  Require all granted

方式 2:源码安装的 Apache 配置

bash

# 1. 创建 Apache 配置文件
vim /etc/httpd/conf.d/awstats.conf# 2. 写入以下内容(基于软链接路径)
Alias /awstats /var/www/cgi-bin/awstats
<Directory "/var/www/cgi-bin/awstats">Options ExecCGI -IndexesAddHandler cgi-script .plOrder allow,denyAllow from 127.0.0.1        # 允许本地访问Allow from 10.10.10.128     # 允许服务器自身 IP 访问
</Directory># 3. 重启 Apache 生效
systemctl restart httpd

五、设置定时任务(自动更新统计数据)

bash

# 1. 创建 Cron 任务文件
vim /etc/cron.d/awstats# 2. 写入定时任务(每 1 小时更新一次,可调整频率)
0 * * * * root /usr/share/awstats/wwwroot/cgi-bin/awstats.pl -config=yourdomain -update >/dev/null 2>&1# 源码安装时,替换路径为:
# 0 * * * * root /var/www/cgi-bin/awstats/awstats.pl -config=yourdomain -update >/dev/null 2>&1# 3. 重启 Cron 服务
systemctl restart crond
systemctl enable crond

  • 替换 yourdomain 为你的配置文件名前缀(如 10.10.10.128)。

六、首次生成统计数据(手动初始化)

bash

# yum 安装路径
/usr/share/awstats/wwwroot/cgi-bin/awstats.pl -config=yourdomain -update# 源码安装路径
# /var/www/cgi-bin/awstats/awstats.pl -config=yourdomain -update

  • 执行后,会在 /var/lib/awstats 生成统计数据文件。

七、访问 AWStats 中文界面

浏览器输入以下地址(替换 yourdomain 和 IP):

plaintext

http://10.10.10.128/awstats/awstats.pl?config=yourdomain

 

 

  • 效果:界面应为中文,显示访问量、独立访客、页面浏览等统计数据。

八、常见问题排查

1. 界面还是英文?

  • 检查配置文件:确保 Lang="cn" 无拼写错误。
  • 强制刷新浏览器:Ctrl + F5 清除缓存。
  • 检查语言包:

    bash

    # yum 安装
    ls /usr/share/awstats/lang/awstats.cn.conf# 源码安装
    ls /usr/local/awstats/lang/awstats.cn.conf
    
     
    • 若文件不存在,重新安装 AWStats(yum reinstall awstats 或 重新解压源码包)。

2. 访问报 403 Forbidden?

  • 检查 awstats.conf 中 Allow from 是否包含你的访问 IP。
  • 临时开放所有 IP 测试(生产环境慎用):

    apache

    Allow from all
    

3. 数据不更新?

  • 检查 Cron 任务:cat /etc/cron.d/awstats 确认任务存在。


总结

  1. yum 安装:适合快速部署,依赖自动处理,中文配置简单。
  2. 源码安装:适合自定义版本,需手动处理软链接和路径。
  3. 核心步骤:配置文件加 Lang="cn" + Apache 权限开放 + 定时任务

按流程操作,即可完成 AWStats 部署 + 中文界面 全流程,实现网站访问数据统计! 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.pswp.cn/web/83148.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

React从基础入门到高级实战:React 实战项目 - 项目四:企业级仪表盘

React 实战项目&#xff1a;企业级仪表盘 欢迎来到 React 开发教程专栏 的第 29 篇&#xff01;在前 28 篇文章中&#xff0c;我们从 React 的基础概念逐步深入到高级技巧&#xff0c;涵盖了组件设计、状态管理、路由配置、性能优化和实时通信等核心内容。这一次&#xff0c;我…

STM32----IAP远程升级

一、概述&#xff1a; IAP&#xff0c;全称是“In-Application Programming”&#xff0c;中文解释为“在程序中编程”。IAP是一种对通过微控制器的对外接口&#xff08;如USART&#xff0c;IIC&#xff0c;CAN&#xff0c;USB&#xff0c;以太网接口甚至是无线射频通道&#…

模拟搭建私网访问外网、外网访问服务器服务的实践操作

目录 实验环境 实践要求 一、准备工作 1、准备四台虚拟机&#xff0c;分别标号 2、 防火墙额外添加两块网卡&#xff0c;自定义网络连接模式 3、 关闭虚拟机的图形管理工具 4、关闭防火墙 5、分别配置四台虚拟机的IP地址&#xff0c;此处举一个例子&#xff08;使用的临…

删除远程已经不存在但本地仍然存在的Git分支

1. 获取远程分支列表 首先&#xff0c;确保你获取了远程仓库的最新分支信息&#xff1a; git fetch -p -p 参数会自动清理本地仓库中那些在远程已经被删除的分支的引用。 2. 查看本地分支与远程分支的对比 运行以下命令来查看哪些本地分支没有对应的远程分支&#xff1a; …

GIT(AI回答)

在Git中&#xff0c;git push 命令主要用于将本地分支的提交推送到‌远程仓库‌&#xff08;如GitHub、GitLab等&#xff09;。如果你希望将本地分支的改动同步到另一个‌本地分支‌&#xff0c;这不是 git push 的设计目的。以下是正确的替代方法&#xff1a; 方法1&#xff1…

深入剖析AI大模型:大模型时代的 Prompt 工程全解析

今天聊的内容&#xff0c;我认为是AI开发里面非常重要的内容。它在AI开发里无处不在&#xff0c;当你对 AI 助手说 "用李白的风格写一首关于人工智能的诗"&#xff0c;或者让翻译模型 "将这段合同翻译成商务日语" 时&#xff0c;输入的这句话就是 Prompt。…

React - 组件通信

组件通信 概念&#xff1a;组件通信就是组件之间数据传递&#xff0c;根据组件嵌套关系不同&#xff0c;有不同的通信方法 父传子 —— 基础实现 实现步骤 父组件传递数据 - 在子组件标签上绑定属性子组件接收数据 - 子组件通过props参数接收数据 声明子组件并使用 //声明子…

RKNN开发环境搭建2-RKNN Model Zoo 环境搭建

目录 1.简介2.环境搭建2.1 启动 docker 环境2.2 安装依赖工具2.3 下载 RKNN Model Zoo2.4 RKNN模型转化2.5编译C++1.简介 RKNN Model Zoo基于 RKNPU SDK 工具链开发, 提供了目前主流算法的部署例程. 例程包含导出RKNN模型, 使用 Python API, CAPI 推理 RKNN 模型的流程.   本…

计算机视觉顶刊《International Journal of Computer Vision》2025年5月前沿热点可视化分析

追踪计算机视觉领域的前沿热点是把握技术发展方向、推动创新落地的关键&#xff0c;分析这些热点&#xff0c;不仅能洞察技术趋势&#xff0c;更能为科研选题和工程实践提供重要参考。本文对计算机视觉顶刊《International Journal of Computer Vision》2025年5月前沿热点进行了…

互联网大厂Java求职面试:云原生与微服务架构的深度探讨

互联网大厂Java求职面试&#xff1a;云原生与微服务架构的深度探讨 第一轮提问 面试官&#xff1a; “郑薪苦&#xff0c;假设我们要设计一个大规模电商平台的微服务架构&#xff0c;你会如何设计其订单服务&#xff1f;” 郑薪苦&#xff1a; “首先&#xff0c;我会采用…

STM32实战:数字音频播放器开发指南

基于STM32的数字音频播放器/效果器是个很棒的项目&#xff01;这涉及到多个嵌入式开发的关键技术点。下面我为你拆解实现方案和关键学习内容&#xff1a; 系统架构概览 [SD Card] -> [File System (FATFS)] -> [Audio Decoder (WAV/MP3)] -> [DSP Processing (EQ, R…

基于TurtleBot3在Gazebo地图实现机器人远程控制

1. TurtleBot3环境配置 # 下载TurtleBot3核心包 mkdir -p ~/catkin_ws/src cd ~/catkin_ws/src git clone -b noetic-devel https://github.com/ROBOTIS-GIT/turtlebot3.git git clone -b noetic https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git git clone -b noetic-dev…

【Vue】scoped+组件通信+props校验

【scoped作用及原理】 【作用】 默认写在组件中style的样式会全局生效, 因此很容易造成多个组件之间的样式冲突问题 故而可以给组件加上scoped 属性&#xff0c; 令样式只作用于当前组件的标签 作用&#xff1a;防止不同vue组件样式污染 【原理】 给组件加上scoped 属性后…

IDEA 中 Maven Dependencies 出现红色波浪线的原因及解决方法

在使用 IntelliJ IDEA 开发 Java 项目时&#xff0c;尤其是基于 Maven 的项目&#xff0c;开发者可能会遇到 Maven Dependencies 中出现红色波浪线的问题。这种现象通常表示项目依赖未能正确解析或下载&#xff0c;导致代码提示错误、编译失败等问题。本文将详细分析该问题的常…

把二级域名绑定的wordpress网站的指定页面

要将二级域名(如 beijing.wodepress.com)绑定到 WordPress 网站的指定页面(如 wodepress.com/beijing)&#xff0c;你需要完成以下步骤&#xff1a; 步骤 1&#xff1a;创建二级域名 登录你的域名控制面板(如 cPanel、阿里云、腾讯云等)。 找到 DNS 管理 或 域名解析 部分。…

FreeRTOS学习01_移植FreeRTOS到STM32(图文详解)

移植FreeRTOS到STM32 1、前言2、获取 STM32 的裸机工程模板3、下载 FreeRTOS V9.0.0 源码4、FreeRTOS文件夹内容简介5、移植FreeRTOS5.1 更改STM32工程模板文件夹名字5.2 提取FreeRTOS最简源码5.3 拷贝 FreeRTOSConfig.h 文件到 user 文件夹5.4 添加 FreeRTOS 源码到工程组文件…

12.找到字符串中所有字母异位词

&#x1f9e0; 题目解析 题目描述&#xff1a; 给定两个字符串 s 和 p&#xff0c;找出 s 中所有 p 的字母异位词的起始索引。 返回的答案以数组形式表示。 字母异位词定义&#xff1a; 若两个字符串包含的字符种类和出现次数完全相同&#xff0c;顺序无所谓&#xff0c;则互为…

基于Springboot+Vue的办公管理系统

角色&#xff1a; 管理员、员工 技术&#xff1a; 后端: SpringBoot, Vue2, MySQL, Mybatis-Plus 前端: Vue2, Element-UI, Axios, Echarts, Vue-Router 核心功能&#xff1a; 该办公管理系统是一个综合性的企业内部管理平台&#xff0c;旨在提升企业运营效率和员工管理水…

【磁盘】每天掌握一个Linux命令 - iostat

目录 【磁盘】每天掌握一个Linux命令 - iostat工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景 注意事项 【磁盘】每天掌握一个Linux命令 - iostat 工具概述 iostat&#xff08;I/O Statistics&#xff09;是Linux系统下用于监视系统输入输出设备和CPU使…

专业文件比对辅助软件

软件介绍 本文介绍一款用于文件内容对比的计算机辅助工具&#xff0c;支持快速识别不同版本文档间的差异内容。 功能与版本特性 这款工具提供无偿使用授权&#xff0c;技术文档显示其开发历程已达近三十年。程序采用独立封装设计&#xff0c;无需安装即可直接运行。 基础操…