web服务器学习3---httpd 2.4.29日志处理
.rotarelogs分割工具
如果有虚拟主机在虚拟主机配置文件中配置,否则在主配置文件中修改.
1.1修改配置文件
vi /usr/local/httpd/conf/conf.d/vhosts.conf //在虚拟主机配置文件中修改
<VirtualHost 192.168.80.180:80>
ServerAdmin admin@test1.com
DocumentRoot /var/test1/
ServerName www.test1.com
CustomLog "|/usr/local/httpd/bin/rotatelogs -l logs/www.test1.com_Custom_%Y%m%d.log 86400" common
ErrorLog "|/usr/local/httpd/bin/rotatelogs -l logs/test1_error_%Y%m%d.log 86400"
</VirtualHost>
systemctl restart httpd
通过管道把日志交给rotatelogs工具 -l指使用本地时间 ,86400表示日志分隔的间隔为1天,单位是秒;
%Y%m%d表示获取年月日;
common 和 conbined是日志固定格式;
1.2实验截图:

2.cronolog分割(第三方)
2.1手动安装编译工具
tar xf cronolog-1.6.2.tar.gz -C /opt/
cd /opt/cronolog-1.6.2/
./configure
make && make install
which cronolog
2.2修改配置文件
vi /usr/local/httpd/conf/conf.d/vhosts.conf //与自带的log分割工具一样的设置,只是使用工具的路径不同
<VirtualHost 192.168.80.180:80>
ServerAdmin admin@test1.com
DocumentRoot /var/test1/
ServerName www.test1.com
CustomLog "| /usr/local/sbin/cronolog -l logs/www.test1.com_Custom_%Y%m%d.log 86400" combined
ErrorLog "| /usr/local/sbin/cronolog -l logs/test1_error_%Y%m%d.log 86400"
</VirtualHost>
httpd -t
systemctl restart httpd
2.3实验截图

log格式原因不支持末尾以时间的方式命名log.
3 AWStats日志分析
关注两点:1.log文件位置;
2.log文件是否生成并选择正确;
预置条件
apachectl -D DUMP_MODULES | grep cgi //确认加载了cgi模块
ls /usr/local/httpd/modules/ | grep cgi //确认是否编译过cgi模块
vi /usr/local/httpd/conf/httpd.conf //手动加载
LoadModule cgid_module modules/mod_cgid.so
LoadModule cgi_module modules/mod_cgi.so
1.安装及配置
tar xzvf awstats-7.6.tar.gz
mv awstats-7.6 /usr/local/awstats
cd /usr/local/awstats/tools/
./awstats_configure.pl //自动配置脚本,根据提示填写
http配置文件路径 /usr/local/httpd/conf/httpd.conf
转换日志格式
在配置最后会提示日志访问网页,需要记录下,如下:
http://192.168.80.180/awstats/awstats.pl?config=www.test1.com
2.修改awstats配置文件
vi /etc/awstats/awstats.www.test1.com.conf
LogFile="/usr/local/httpd/logs/test1.com-access_log" //修改日志文件位置,第50行,统计log数据一定要写对。
DirData="/var/lib/awstats" //220行 手动建立每次抓取的数据存放位置
mkdir /var/lib/awstats
3.访问网页,手动采集数据
cd /usr/local/awstats/tools/
chmod +x awstats_updateall.pl
./awstats_updateall.pl now //读取访问log,获取数据
cd /var/lib/awstats //查看是否采集到数据

4.访问页面及优化
在访问AWStats系统时,需要指定目录,脚本位置,统计目标等信息,不便于记忆。为了简化操作,在web根目录下建立一个自动跳转的html网页.
vi /usr/local/httpd/conf/conf.d/vhosts.conf //设置网页所在目录的访问权限,实际是设置虚拟目录访问权限,设置权限
<Directory "/usr/local/awstats/wwwroot">
Options None
AllowOverride None
Order allow,deny
Allow from all
AuthName "www.test1.com"
AuthType Basic
AuthUserFile /usr/local/httpd/user
require valid-user
Require all granted
</Directory>
vi /var/test1/index.html //优化访问页面
<html>
<head>
<meta http-equiv=refresh content="0;url=http://www.test1.com/awstats/awstats.pl?config=www.test1.com">
</head>
<body></body>
</html>
访问页面:


5.自动采集--计划任务
crontab -e
*/5 * * * * /usr/local/awstats/tools/awstats_updateall.pl now
crontab -l
service crond status
systemctl enable crond
systemctl list-unit-files | grep crond
web服务器学习3---httpd 2.4.29日志处理的更多相关文章
- web服务器学习1---httpd-2.4.29源码手动编译安装
环境准备: 系统:CentOS 7.4 软件:httpd-2.4.29 一 Apache主要特点 apache服务器在功能,性能和安全性等方面表现比较突出,可以较好地满足web服务器地应用需求.主要 ...
- Web服务器学习总结(一):web服务器简介
一.WEB服务器 1.1.WEB服务器简介 1.Web服务器是指驻留于因特网上某种类型计算机的程序,是可以向发出请求的浏览器提供文档的程序.当Web浏览器(客户端)连到服务器上并请求文件时,服务器将处 ...
- Kestrel Web 服务器学习笔记
前言: ASP.NET Core 已经不是啥新鲜的东西,很多新启的项目都会首选 Core 做开发: 而 Kestrel 可以说是微软推出的唯一真正实现跨平台的 Web 服务器了: Kestrel 利用 ...
- web服务器学习4---httpd-2.4.29优化
实验环境: 环境:CentOS 7.4 软件版本:httpd-2.4.29 一.网页压缩 1.检查是否安装压缩模块 apachectl -D DUMP_MODULES | grep deflate 如 ...
- web服务器学习2---httpd-2.4.29虚拟目录及访问控制
一 创建虚拟目录 环境准备: 系统:CentOS 7.4 软件:httpd-2.4.29 1.编辑主配置文件,添加命令运行子配置文件 vi /usr/local/httpd/conf/httpd.co ...
- 嵌入式web服务器-thttpd
交叉编译thttpd http://lakie.blog.163.com/blog/static/45185220201162910432330/ thttpd安装与调试 http://blog.cs ...
- Servlet学习之web服务器Tomcat 详解
Web服务器是什么 Web服务器是指驻留于因特网上某种类型计算机的程序.当Web浏览器(客户端)连到服务器上并请求文件时,服务器将处理该请求并将文件发送到该浏览器上,附带的信息会告诉浏览器如何查看该文 ...
- JSP学习笔记(三):简单的Tomcat Web服务器
注意:每次对Tomcat配置文件进行修改后,必须重启Tomcat 在E盘的DATA文件夹中创建TomcatDemo文件夹,并将Tomcat安装路径下的webapps/ROOT中的WEB-INF文件夹复 ...
- 学习 node.js 搭建web服务器
开始 学习使用 node.js 首先完成搭建一个 web服务器.myweb.js var http = require('http'); var url = require('url'); var h ...
随机推荐
- Linux显示USB设备
Linux显示USB设备 youhaidong@youhaidong-ThinkPad-Edge-E545:~$ lsusb -tv /: Bus 08.Port 1: Dev 1, Class=ro ...
- HTML5图片居中的问题
刚开始接触html5,准备写一些网页,但是学习的过程中遇到了图片不能居中的问题,首先来看看,代码和执行效果: <!DOCTYPE html> <html> <head&g ...
- 【转载】[ORACLE]详解not in与not exists的区别与用法
在网上搜了下关于oracle中not exists和not in性能的比较,发现没有描述的太全面的,可能是问题太简单了,达人们都不屑于解释吧.于是自己花了点时间,试图把这个问题简单描述清楚,其实归根结 ...
- Shell 的特殊变量
2017-08-02 1.$0 获取当前脚本的名称或全路径 cat name.sh Linux shell sh name.sh echo $0 name.sh 2.$n(n >=1) 获取脚本 ...
- 实现一个简单的订阅与发布模式的代码块,和redux
/** * Created by Mrzou on 2018/3/11. */ //实现简单的订阅与发布模式的代码块export function pattern() { let currentLis ...
- 洛谷P1501 [国家集训队]Tree II(LCT,Splay)
洛谷题目传送门 关于LCT的其它问题可以参考一下我的LCT总结 一道LCT很好的练习放懒标记技巧的题目. 一开始看到又做加法又做乘法的时候我是有点mengbi的. 然后我想起了模板线段树2...... ...
- 【BZOJ3295】动态逆序对(线段树,树状数组)
[BZOJ3295]动态逆序对(线段树,树状数组) 题面 Description 对于序列A,它的逆序对数定义为满足iAj的数对(i,j)的个数.给1到n的一个排列,按照某种顺序依次删除m个元素,你的 ...
- 【CJOJ1793】【USACO 4.3.2】素数方阵
题面 Description 在下面的方格中,每行,每列,以及两条对角线上的数字可以看作是五位的素数.方格中的行按照从左到右的顺序组成一个素数,而列按照从上到下的顺序.两条对角线也是按照从左到右的顺序 ...
- eclipse 启动报内存溢出的问题out of memory!
这个问题困扰了我一个月,今天终于解决了,在网上尝试了好多方法都不行.启动的时候就报错,这里可能是jdk的内存太小了,需要加大jdk的内存. 加上这个就好了 -server -Xms512m -Xmx5 ...
- 软件测试必备-前端知识点之html基础
前端必备知识点 第一部分:HTML基础 一. web前端标准 1. 结构标签----html 2. 样式标准,美化----css 3. 行为标准---js 二. 五大浏览器厂商 1. ie 2. 谷歌 ...