.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日志处理的更多相关文章

  1. web服务器学习1---httpd-2.4.29源码手动编译安装

    环境准备: 系统:CentOS 7.4 软件:httpd-2.4.29 一  Apache主要特点 apache服务器在功能,性能和安全性等方面表现比较突出,可以较好地满足web服务器地应用需求.主要 ...

  2. Web服务器学习总结(一):web服务器简介

    一.WEB服务器 1.1.WEB服务器简介 1.Web服务器是指驻留于因特网上某种类型计算机的程序,是可以向发出请求的浏览器提供文档的程序.当Web浏览器(客户端)连到服务器上并请求文件时,服务器将处 ...

  3. Kestrel Web 服务器学习笔记

    前言: ASP.NET Core 已经不是啥新鲜的东西,很多新启的项目都会首选 Core 做开发: 而 Kestrel 可以说是微软推出的唯一真正实现跨平台的 Web 服务器了: Kestrel 利用 ...

  4. web服务器学习4---httpd-2.4.29优化

    实验环境: 环境:CentOS 7.4 软件版本:httpd-2.4.29 一.网页压缩 1.检查是否安装压缩模块 apachectl -D DUMP_MODULES | grep deflate 如 ...

  5. web服务器学习2---httpd-2.4.29虚拟目录及访问控制

    一 创建虚拟目录 环境准备: 系统:CentOS 7.4 软件:httpd-2.4.29 1.编辑主配置文件,添加命令运行子配置文件 vi /usr/local/httpd/conf/httpd.co ...

  6. 嵌入式web服务器-thttpd

    交叉编译thttpd http://lakie.blog.163.com/blog/static/45185220201162910432330/ thttpd安装与调试 http://blog.cs ...

  7. Servlet学习之web服务器Tomcat 详解

    Web服务器是什么 Web服务器是指驻留于因特网上某种类型计算机的程序.当Web浏览器(客户端)连到服务器上并请求文件时,服务器将处理该请求并将文件发送到该浏览器上,附带的信息会告诉浏览器如何查看该文 ...

  8. JSP学习笔记(三):简单的Tomcat Web服务器

    注意:每次对Tomcat配置文件进行修改后,必须重启Tomcat 在E盘的DATA文件夹中创建TomcatDemo文件夹,并将Tomcat安装路径下的webapps/ROOT中的WEB-INF文件夹复 ...

  9. 学习 node.js 搭建web服务器

    开始 学习使用 node.js 首先完成搭建一个 web服务器.myweb.js var http = require('http'); var url = require('url'); var h ...

随机推荐

  1. 基于jQuery的一个提示功能的实现

    最近有点忙,没有时间更新自己的博客,只能说我在原地踏步了,不知道你们进步了没有? 今天给大家分享一个提示的实现,有点简单,适合小白同学学习.下面是效果图 提示的功能: 当鼠标进入“我的菜单”的子菜单时 ...

  2. C#密封类和密封方法--C#基础

    1.密封类 1)不是所有的类都可以继承,不能别继承的类叫做密封类.如果一个类不希望被继承.被派生可以采用关键字sealed,下面Class2不能继承Class1 Class1.cs: namespac ...

  3. 数列分块总结——题目总版(hzwer分块九题及其他题目)(分块)

    闲话 莫队算法似乎还是需要一点分块思想的......于是我就先来搞分块啦! 膜拜hzwer学长神犇%%%Orz 这九道题,每一道都堪称经典,强力打Call!点这里进入 算法简述 每一次考试被炸得体无完 ...

  4. 【Uoj34】多项式乘法(NTT,FFT)

    [Uoj34]多项式乘法(NTT,FFT) 题面 uoj 题解 首先多项式乘法用\(FFT\)是一个很久很久以前就写过的东西 直接贴一下代码吧.. #include<iostream> # ...

  5. 【BZOJ4403】序列统计(组合数学,卢卡斯定理)

    [BZOJ4403]序列统计(组合数学,卢卡斯定理) 题面 Description 给定三个正整数N.L和R,统计长度在1到N之间,元素大小都在L到R之间的单调不降序列的数量.输出答案对10^6+3取 ...

  6. [HAOI2010]软件安装

    简单的tarjan+(本蒟蒻刚刚接触不久)恶心的树形DP 题面 题目描述 现在我们的手头有N个软件,对于一个软件i,它要占用Wi的磁盘空间,它的价值为Vi.我们希望从中选择一些软件安装到一台磁盘容量为 ...

  7. LightOJ1282 Leading and Trailing

    题面 给定两个数n,k 求n^k的前三位和最后三位 Input Input starts with an integer T (≤ 1000), denoting the number of test ...

  8. c++cout执行顺序之一个不容易注意到的一点

    二话不说,先看一个例子 #include <iostream> using namespace std; int main() { ]={,,,,,,,,,}; int *p=a; int ...

  9. APNS IOS 消息推送沙盒模式和发布模式

    在做.NET向IOS设备的App进行消息推送时候,采用的是PushSharp开源类库进行消息的推送,而在开发过程中,采用的是测试版本的app,使用的是测试的p12证书采用的是ApnsConfigura ...

  10. Firefox书签同步工具Xmarks

    Xmarks作为Firefox最受欢迎的社会化书签扩展之一,其前身为Foxmarks,并且显著的增加了它的功能.Xmarks已被LastPass(领先的密码和数据管理)收购. 之前一直是只使用火狐浏览 ...