企业平台架构--Apache配置与应用(Apache的访问控制(KeepAlive),日志分割(rotatelogs和cronolog)实操,日志分析(AWStats)实操

本文详细介绍了Apache服务器的配置,包括连接保持、访问控制及日志管理。通过设置KeepAlive参数优化连接效率,利用Require进行访问控制,并探讨了基于客户端地址和用户授权的限制。此外,还讲解了Apache日志分割,使用rotatelogs和cronolog工具,并介绍了AWStats日志分析系统用于日志数据分析。
摘要由CSDN通过智能技术生成

前言

  • Apache HTTP Server 之所以受到众多企业的青睐,得益于其代码开源,跨平台,功能模块化,可灵活定制等诸多优点,其不仅性能稳定,在安全性方面的表现也十分出色

一:Apache配置详解

1.1:Apache连接保持

1.1.1:为什么要保持连接

  • HTTP协议是基于TCP协议之上的,在进行HTTP连接之前,要先进行TCP连接,每个TCP连接都要进行三次握手与四次挥手。建立与关闭连接对于HTTP协议而言会消耗很多的内存与CPU资源。
  • 解决办法是HTTP连接保持。就是尽量地保持客户端的连接,通过一个TCP连接传送多个HTTP请求响应,对于客户端可以提高50%以上的响应时间,对于服务器可以降低建立与关闭连接时的资源消耗。

1.1.2:保持连接的方式

  • Apache连接保持相关参数

  • KeepAlive

    • 是否打开连接保持,OFF关闭,ON打开
  • KeepAliveTimeout

    • 一次连接多次请求之间的最大间隔时间,两次请求超过该时间连接断开
  • MaxKeepAliveRequests

    • 一次连接能够传输的最大请求数量

1.2:Apache访问控制

1.2.1:Apache访问控制概述

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

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

  • 使用Require配置项实现访问控制,按先后顺序限制
- 可用<Location><Directory><Files><Limit>配置段中
  • Require配置项的常见语法
Require all granted
Require all denied
Require local
Require [not] host <主机名或域名列表>
Require [not] ip <IP地址或网段列表>
'使用not禁止访问时要将其置于<RequireAll></RequireAll>容器中,并在容器中指定相对应的限制策略'
  • 实验举例
[root@localhost ~]# cd /etc/httpd/conf
[root@localhost conf]# ls
httpd.conf  magic
[root@localhost conf]# mkdir extra
[root@localhost conf]# cd extra
[root@localhost extra]# vim vhost.conf
<VirtualHost 20.0.0.47:80>
        DocumentRoot "/var/www/html/kevin"
        ErrorLog "logs/www.kevin.com.error_log"
        CustomLog "logs/www.kevin.com.access_log" common
        <Directory> "/var/www/html">
        <RequireAll>
                Require not ip 20.0.0.50           '表示不允许ip20.0.0.50访问'
                Require all granted 
        </RequireAll>
        </Directory>
</VirtualHost>

1.2.3:用户授权限制–创建用户认证数据库

  • 创建用户认证数据库
  命令基本格式
  'htpasswd命令是httpd自带的'
  htpasswd -c /etc/httpd/conf/abc webadmin 			'为用户webadmin创建密码文件'
  New password:															'输入密码'
  Re-type new password:											'重复输入密码'
  cat  /etc/httpd/conf/abc
  webadmin:加密密码
  • 实验举例
[root@localhost abc]# htpasswd -c /etc/httpd/conf/aaa ddd
New password: 
Re-type new password: 
Adding password for user ddd
[root@localhost abc]# cat /etc/httpd/conf/aaa
ddd:$apr1$zwIklPGy$ZINaIkXsSq36oIk2lAiiJ1
    '添加第二个用户'
[root@localhost abc]# htpasswd /etc/httpd/conf/aaa bbb
New password: 
Re-type new password: 
Adding password for user bbb
[root@localhost abc
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值