Apache配置与应用

1.Apache连接保持

1)KeepAlive:决定是否打开连接保持功能,后面接OFF表示关闭,接ON表示打开
2)KeepAliveTimeout:表示一次连接多次请求之间的最大间隔时间,即两次请求之间超过该时间,就会自动断开,从而避免客户端占用连接资源
3)MaxKeepAliveRequstes:在一次长连接中可以传输的最大请求数量,超过此最大请求数量就会自动断开连接
在这里插入图片描述
修改配置之后可以用命令 httpd -t 检查配置文件语法是否存在问题
在这里插入图片描述

Apache访问控制

Apache通过设置配置文件httpd-default.conf中相关的连接保持参数来开启与控制连接保持功能

  • 作用:
    • 控制对网站资源的访问
    • 为特定的网站目录添加访问授权
  • 常用访问控制方式
    • 客户机地址限制
    • 用户授权限制

基于客户端地址的访问控制

  • 使用Require配置项实现访问控制,按先后顺序限制
  • 可用于< Location >、< Directory >、< Flies > 、< Limit > 配置段中
  • Require配置项的常见语法
    • Require all granted 允许所有
    • Require all denied 拒绝所有
    • Require local 只允许本机用户
    • Require [ not ] host < 主机名或域名列表 > 仅允许/拒绝 按主机名或域名拒绝
    • Require [ not ] ip < IP地址或网段列表 > 仅允许/拒绝 按IP或网段拒绝
      使用not禁止访问时要将其置于< RequireAll > < /RequireAll >容器中并在容器中指定相应的限制策略(Centos 7),并且遵循匹配即中止原则。
      在这里插入图片描述

用户授权限制

  • 创建用户认证数据库
htpasswd [ -c /etc/httpd/conf/.awspwd (指明数据存放路径 第一次创建时需要此选项)] webadmin 

在这里插入图片描述
cat /usr/local/httpd/conf/.mypwd //查看用户认证数据库

在这里插入图片描述

  • 修改配置文件
    在<Directory “/usr/local/htppd/htdocs”> ……………中添加配置
    如:
    <Directory “/usr/local/htppd/htdocs”>
    ……………
    AuthName “XXXXXXX” //受保护的域名
    AuthType Basic //认证类型为基础
    AuthUserFile /usr/local/httpd/conf/.awspwd //用户数据库文件位置
    Require valid-user //要求通过认证才能访问

httpd -t//检查语法
systemctl stop httpd
systemctl start httpd//重启httpd服务

  • 测试
    win10访问

在这里插入图片描述
输入刚刚创建的用户和密码

日志分割

  • 随着网站的访问量增加,默认情况下Apache的单个日志文件也会越来越大
  • 日志文件占用磁盘空间很大
  • 查看相关信息不方便

对日志文件进行分割

Apache自带rotatelogs分割工具实现

cd /usr/local/httpd/logs//进入存放日志的目录下
rm -rf kcce.com-*//删除之前做实验的其他日志
rm -rf kgc.com-* //删除之前做实验的其他日志

在这里插入图片描述
剩下默认的三个日志文件
在这里插入图片描述

vi /usr/local/httpd/conf/httpd.conf///编译主配置文件

在这里插入图片描述
因为是单个域名所以取消注释
在这里插入图片描述
修改错误日志的存放路径,采用日志分割技术

|/usr/local/httpd/bin/rotatelogs -l /usr/local/httpd/logs/kgc.error-%Y%m%d.log 86400

以本机的时间存放到/usr/local/httpd/logs/
名为kgc.error-%Y%m%d.log 年月日
86400秒=1天 按天分割
在这里插入图片描述
修改正确日志的存放路径,采用日志分割技术
“|/usr/local/httpd/bin/rotatelogs -l /usr/local/httpd/logs/kgc.access-%Y%m%d.log 86400” combined
kgc.access-%Y%m%d.log //名字错误的error改成access正确的单词
common改成combined //采用复杂的格式
httpd -t//检查语法
systemctl stop httpd
systemctl start httpd//重启httpd服务
vi /etc/hosts//确认hosts里域名的映射关系
hostname//确认主机名

验证

win访问网站,触发点击事件,都会生成日志
cd /usr/local/httpd/logs//进入存放日志的目录
ls//就会生成日志

日志分析系统

  • AWStats日志分析系统
    Perl语言开发的一款开源日志分析系统
    可用来分析Apache、 Samba、Vsftpd、IIS等服务器的访问日志
    信息结合crond等计划任务服务,可对日志内容定期进行分析

因为AWStats日志分析系统与rotatelogs分割工具互斥所以先把上面做的还原

vi /usr/local/httpd/conf/httpd.conf///编译主配置文件

在这里插入图片描述
Require all granted//取消注释允许所有
AuthName “my auth”
AuthType Basic
AuthUserFile /usr/local/httpd/conf/.mypwd
Require valid-user//注释掉添加用户授权配置的语句
在这里插入图片描述
还原默认
在这里插入图片描述

combined 推荐用长格式的,记录更详细的消息
httpd -t//检查语法

systemctl stop httpd
systemctl start httpd//重启httpd服务
cd /usr/local/httpd/logs//进入存放日志的目录
rm -rf kgc*//删除之前rotatelogs分割工具生成的日志
echo > access_log//清空之前的日志
cd /usr/src//进入压缩包目录下

tar xf awstats..... -C /usr/local///解压缩到源码包的路径下
cd /usr/local//进入源码包路径下
mv awstats-7... awstats//修改包名
cd awstats//进入包目录下

ls//查看
在这里插入图片描述
docs //说明文档
tools //工具包
wwwroot //存放最终分析结果的网站

cd tools//进入工具包
./awstats_configure.pl//直接配置

在这里插入图片描述
//监控哪项服务?写上apache的安装路径配置文件//
在这里插入图片描述
//监控哪项服务?写上apache的安装路径配置文件//
在这里插入图片描述
是否要自动建一个配置文件? 输入y
在这里插入图片描述
你的站点名称是什么? 输入域名
在这里插入图片描述
日志分析的配置文件在哪 回车选择默认路径即可
在这里插入图片描述
最终可以通过这个网站来监控
localhost对于服务器是本机
对于其他的就要修改成域名或者IP地址(写域名的话,提前写好A记录的映射关系)
vi /etc/awstats/awstats.www.kgc.com.conf //编译生成的配置文件
在这里插入图片描述
监控日志的来源 修改为真实的日志来源

在这里插入图片描述
监控后的日志存放的路径

mkdir /var/lib/awstats//因为没有这个文件所以手工建一个这个目录
vi /usr/local/httpd/conf/httpd.conf///编译主配置文件

在这里插入图片描述
Awstats自动追加的配置项
Require all granted //因为版本旧所以注释以前的Order allow,deny和Allow from all,改成centos7的风格,追加一条允许所有都可以访问

在这里插入图片描述
cgi是安装apache的时候,已经安装的模块,所以取消cgi模块的注释,使其支持动态的网站

systemctl stop httpd
systemctl start httpd//重启httpd服务

结合计划任务实时更新

cd /usr/local/awstats/tools//进入awstats工具包目录
ls

在这里插入图片描述

awstats_updateall.pl//手工刷新的可执行文件
./awstats_updateall.pl now//加上now立刻更新

如果报错则使用/usr/local/awstats-7.6/wwwroot/cgi-bin/ awstats.pl -update -config= www.kgc.com 进行刷新

crontab -e//添加任务计划
在这里插入图片描述
每隔5分钟执行一次命令(要加上绝对路径 /usr/local/awstats/tools/awstats_updateall.pl now)
如果报错则使用/usr/local/awstats-7.6/wwwroot/cgi-bin/ awstats.pl -update -config= www.kgc.com

crontab -l//查看任务计划
systemctl restart crond//执行一次任务计划
systemctl enable crond//开机自启动任务计划

查看统计页面
设置网页自动跳转,方便访问

[root@www ~]# vim /var/www/html/awb.html
<html>
<head>
<meta http-equiv=refresh content="0;
url=http://www.kcce.com/awstats/awstats.pl?config=www.kcce.com">
</head>
<body></body>
</html>

这样以后直接输入www.kgc.com/awb.html就可以自动跳转到日志分析界面
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值