CentOS7.4—Apache优化应用二(日志管理)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CentOS7.4—Apache优化应用二(日志管理)相关的知识,希望对你有一定的参考价值。

Apache优化应用二(日志管理)
目录
第一部分 准备工作
第二部分 安装Apache服务
第三部分 日志管理一(配置日志分割)
第四部分 日志管理二(配置Awstats日志分析软件)

第一部分 准备工作
一:服务器:Linux系统—CentOS 7.4;
IP地址:192.168.80.10
技术分享图片
客户端:以WIN7为例,测试验证结果,与服务器在同一网段;
IP地址:192.168.80.2

二:准备压缩包
技术分享图片
//apr-1.6.2.tar.gz和apr-util-1.6.0.tar.gz是httpd2.4以后的版本所需要的插件,必须安装

三:将防火墙与selinux关闭
技术分享图片

第二部分 安装Apache服务
一:安装编译工具与插件
[[email protected] ~]# yum -y install \

gcc \
gcc-c++ \
make \
pcre-devel \
expat-devel \
perl

二:解压:
[[email protected] ~]# tar xf apr-1.6.2.tar.gz
[[email protected] ~]# tar xf apr-util-1.6.0.tar.gz
[[email protected] ~]# tar xf httpd-2.4.29.tar.bz2
[[email protected] ~]# mv apr-1.6.2 httpd-2.4.29/srclib/apr
[[email protected] ~]# mv apr-util-1.6.0 httpd-2.4.29/srclib/apr-util

三:配置(自定义个性化配置)
[[email protected] ~]# cd httpd-2.4.29 //必须进入安装目录下
[[email protected] httpd-2.4.29]# ./configure \

--prefix=/usr/local/httpd \ //指定将httpd程序安装到/usr/local/httpd目录下
--enable-so \ //启用动态加载模块功能
--enable-rewrite \ //启用网页地址重写功能,用于网站优化及目录迁移
--enable-charset-lite \ //启用字符集支持,以便支持使用各种字符集编码的网页
--enable-cgi //启用CGI脚本程序支持,便于扩展网站的应用访问能力

四:编译及安装
[[email protected] httpd-2.4.29]# make && make install

//将httpd服务添加到系统服务
[[email protected] httpd-2.4.29]# cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd
[[email protected] httpd-2.4.29]# vi /etc/init.d/httpd
添加以下两行(注意,“#”不能省略):
技术分享图片
保存退出

[[email protected] httpd-2.4.29]# chkconfig --add httpd //将httpd加入到SERVICE管理器
[[email protected] httpd-2.4.29]# systemctl daemon-reload //重载系统系统管理器

五:编辑httpd主配置文件
[[email protected] httpd-2.4.29]# vi /usr/local/httpd/conf/httpd.conf
修改以下内容:
ServerName localhost
保存退出
//优化执行路径(执行程序文件的原路径不在PATH环境变量中,做个软链接使其可以执行)
[[email protected] httpd-2.4.29]# ln -s /usr/local/httpd/conf/httpd.conf /etc/
[[email protected] httpd-2.4.29]# ln -s /usr/local/httpd/bin/* /usr/local/bin/

//检查语法错误
[[email protected] httpd-2.4.29]# httpd –t
或者:[[email protected] httpd-2.4.29]# apachectl –t
技术分享图片
//查看程序版本
技术分享图片

六:启动服务
[[email protected] httpd-2.4.29]# systemctl start httpd
[[email protected] httpd-2.4.29]# systemctl enable httpd //将httpd设为开机启动
[[email protected] httpd-2.4.29]# netstat -anpt | grep 80 //查看httpd服务运行状态
技术分享图片

七:验证
用WIN7客户端访问服务器
浏览器访问:http://192.168.80.10
技术分享图片
验证成功
(注意,网页默认显示内容为:/usr/local/httpd/htdocs/index.html
技术分享图片

第三部分 日志管理一(配置日志分割)
[[email protected] logs]# cd /usr/local/httpd/logs/ //Apache默认日志路径
技术分享图片
一:以下配置日志分割:
[[email protected] ~]# vi /etc/httpd.conf //进入http主配置文件

  1. 错误日志配置
    技术分享图片
    //通过管道把日志交给rotatelogs工具 -l指使用本地时间 86400表示日志分隔的间隔为1天,单位是秒
    保存退出
    [[email protected] ~]# apachectl –t //检查语法错误
    技术分享图片 //没有错误
  2. 正确日志配置
    [[email protected] ~]# vi /etc/httpd.conf
    技术分享图片
    [[email protected] ~]# systemctl start httpd //重启服务

三:验证,win7下访问Apache网页,然后查看日志信息
技术分享图片
//分割成功(注意:日志只有当访问之后才会产生,该错误日志是操作错误产生,如果无错误,则不显示)

第四部分 日志管理二(配置Awstats日志分析软件)
注意:awstats不支持分析分割日志,如果日志已分割,需修改回来
[[email protected] logs]# vi /etc/httpd.conf
技术分享图片
技术分享图片
保存退出

一:加载cgi模块
[[email protected] ~]# apachectl -D DUMP_MODULES | grep cgi //确认是否加载了cgi模块
[[email protected] ~]# ls /usr/local/httpd/modules/ | grep cgi //确认是否编译过cgi模块
技术分享图片
//如图所示,没有加载cgi模块,但是编译过cgi模块
[[email protected] ~]# vi /usr/local/httpd/conf/httpd.conf //手动加载
添加以下内容:
LoadModule cgid_module modules/mod_cgid.so
LoadModule cgi_module modules/mod_cgi.so
技术分享图片
保存退出
[[email protected] ~]# tar xzvf awstats-7.6.tar.gz //解压awstats软件
[[email protected] ~]# mv awstats-7.6 /usr/local/awstats //创建配置目录

二:搭建DNS服务(此处直接修改hosts文件,等同于搭建DNS服务)

  1. 服务器上修改:
    [[email protected] ~]# vi /etc/hosts
    最后添加:
    192.168.80.10 www.aa.com
    退出保存
  2. Win7下修改:
    路径C:\Windows\System32\drivers\etc
    以记事本打开hosts文件,最后加上一行:192.168.80.10 www.aa.com,保存退出
    技术分享图片

三:AWstats同时分析多个站点的数据

  1. 修改主机名
    [[email protected] ~]# vi /etc/httpd.conf //编辑Apache主配置文件
    ServerName www.aa.com //定义主机名
    保存退出
    [[email protected] ~]# grep "ServerName" /etc/httpd.conf //查看修改成功了没
    技术分享图片
  2. 编辑awstats配置脚本
    [[email protected] ~]# cd /usr/local/awstats/tools/
    [[email protected] tools]# ./awstats_configure.pl //自动配置脚本,根据提示填写
    技术分享图片
    技术分享图片
    技术分享图片
    技术分享图片
    之后回车完成
    [[email protected] tools]# systemctl restart httpd //重启http服务让日志格式生效
  3. 编辑awstats程序的主配置文件
    [[email protected] tools]# vi /etc/awstats/awstats.www.aa.com.conf //修改程序的主配置文件
    LogFile="/usr/local/httpd/logs/access_log" //修改日志文件位置
    DirData="/var/lib/awstats" //手动建立每次抓取的数据存放位置
    保存退出
  4. 创建awstats数据日志文件
    [[email protected] tools]# mkdir /var/lib/awstats //创建数据文件
    [[email protected] tools]# systemctl restart httpd
    //如果之前修改过日志格式需要清空一下
    [[email protected] tools]# cd /usr/local/httpd/logs/
    [[email protected] logs]# rm -f *log
    [[email protected] logs]# systemctl restart httpd
    [[email protected] logs]# cd /usr/local/awstats/tools/
    [[email protected] tools]# chmod +x awstats_updateall.pl
    [[email protected] tools]# ./awstats_updateall.pl now //手动采集一次数据
  5. 做周期性计划任务
    [[email protected] tools]# crontab –e
    /5 * /usr/local/awstats/tools/awstats_updateall.pl now //每五分钟手动采集一次
    技术分享图片
    [[email protected] tools]# systemctl status crond
    技术分享图片
    [[email protected] tools]# systemctl enable crond
    [[email protected] tools]# systemctl list-unit-files | grep crond
    技术分享图片
  6. 检查虚拟目录授权
    [[email protected] tools]# vi /etc/httpd.conf
    文件最后,添加以下内容
    技术分享图片
    保存退出
    [[email protected] tools]# systemctl restart httpd //重启服务

四:验证
win7下浏览器访问
http://192.168.80.10/awstats/awstats.pl?config=www.aa.com //访问测试日志系统工作情况
技术分享图片

五:通过配置页面自动跳转优化统计页面访问
[[email protected] ~]# vi /usr/local/httpd/htdocs/index.html
<html>
<head>
<meta http-equiv=refresh content="0;url=http://www.aa.com/awstats/awstats.pl? config=www.aa.com"> //跳转,当访问www.aa.com时,跳转到分析系统中
</head>
<body></body>
</html>
技术分享图片
保存退出
[[email protected] ~]# service httpd restart //重启http服务

六:win7下浏览器访问 www.aa.com
技术分享图片
注意:服务器如果没做dns的话,必须服务器和客户端上都修改hosts文件

以上是关于CentOS7.4—Apache优化应用二(日志管理)的主要内容,如果未能解决你的问题,请参考以下文章

CentOS7.4—Apache优化应用一(保持连接与版本隐藏)

CentOS7.4——Apache优化应用四(防盗链)

apache优化之防盗链,日志拆分,ab压力测试

针对Apache服务的优化与配置——日志文件优化

Apache深度优化

CentOS7.4—最新版本nginx调优