Apache配置与应用

Apache配置剖析

        Apache连接保持

                Apache连接保持相关参数
                        KeepAlive

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

                        KeepAliveTimeout

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

                        MaxKeepAliveRequests

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

                        查看保持连接的配置文件

                                vi /usr/local/httpd/conf/extra/httpd-default.conf

Apache访问控制

作用

  • 控制对网络资源的访问
  • 为特定的网站目录添加访问权限

常用访问控制方式

  1. 客户机地址限制
  2. 用户授权权限

代码演示 

[root@bogon ~]# vi /usr/local/httpd/conf/httpd.conf 
251      #Require all granted  
252      Require ip 127.0.0.1
253      Require ip 192.168.73.1    Windows打开cmd输入ipconfig查看VMnet8的IP   允许Windows连接

Require all granted:允许所有主机访问
Require all denied:拒绝所有主机访问
Require local:仅允许本地主机访问
Require [not] host <主机名或域名列表>:允许或拒绝指定主机或域名访问
Require [not] ip <IP 地址或网段列表>:允许或拒绝指定 IP 地址网络访问
也可以写网段 写那个就是允许那个连接

    <RequireAll>
    Require all granted
    Require not ip 192.168.0.0/24 192.168.1.0/24
    </RequireAll>
[root@bogon ~]# systemctl restart httpd  重启服务  只要修改配置文件就重启服务    
 
[root@bogon ~]# cd /usr/local/httpd/
[root@bogon httpd]# bin/htpasswd -c /usr/local/httpd/conf/.awspwd webadmin
New password: 
Re-type new password: 
Adding password for user webadmin
[root@bogon httpd]# cat /usr/local/httpd/conf/.awspwd 
webadmin:$apr1$bwZSdpMv$p2m2yw2Vwxo8b7gPoB5Mb.


[root@bogon httpd]# vi /usr/local/httpd/conf/httpd.conf
251     #Require all granted  
        AuthName "DocumentRoot"
        AuthType Basic
        AuthUserFile /usr/local/httpd/conf/.awspwd
        Require valid-user
[root@bogon ~]# systemctl restart httpd 

Apache日志管理

日志分割

随着网站的访问量增加,默认情况下Apache的单个日志文件也会越来越大
  1. 日志文件占用磁盘空间很大
  2. 查看相关信息不方便
对日志文件进行分割
  1. Apache自带rotalelog分割工具实现
  2. 使用第三方工具cronolog分割

自带的日志分割 

自带的日志分割
[root@bogon ~]# mkdir /var/log/httpd
[root@bogon ~]# vi /usr/local/httpd/conf/httpd.conf
277 #ErrorLog "logs/error_log"
278 ErrorLog "|/usr/local/bin/rotatelogs -l /var/log/httpd/error_%Y%m%d.log 86400"
 
307     #CustomLog "logs/access_log" common
308     CustomLog "|/usr/local/bin/rotatelogs -l /var/log/httpd/access_%Y%m%d.log 86400" combined
[root@bogon ~]# systemctl restart httpd
[root@bogon ~]# ls /var/log/httpd/
error_20240709.log
[root@bogon ~]# 

 使用第三方工具进行日志分割

使用第三方工具进行日志分割
# 编译安装 cronolog 工具
tar zxvf cronolog-1.6.2.tar.gz
cd cronolog-1.6.2
./configure
make && make install

# 设置 cronolog 工具工具分割 apache 日志
vi /usr/local/httpd/conf/httpd.conf
277    ErrorLog "|/usr/local/sbin/cronolog /var/log/httpd/www.kgc.com-error_%Y%m%d.log" 
308    CustomLog "|/usr/local/sbin/cronolog /var/log/httpd/www.kgc.com-access_%Y%m%d.log" combined

systemctl restart httpd

AWStats日志分析

上传awstats-7.7.tar.gz软件包
[root@bogon ~]# tar zxf awstats-7.7.tar.gz
[root@bogon ~]# mv awstats-7.7 /usr/local/awstats
[root@bogon ~]# yum -y install perl
[root@bogon ~]# cd /usr/local/awstats/tools/
[root@bogon tools]# chmod +x awstats_configure.pl
[root@bogon tools]# ./awstats_configure.pl
/usr/local/httpd/conf/httpd.conf
y
y
www.kgc.com
一律回车    
[root@bogon tools]# vi /usr/local/httpd/conf/httpd.conf   
    145 <IfModule !mpm_prefork_module>
    146         LoadModule cgid_module modules/mod_cgid.so
    147 </IfModule>
    148 <IfModule mpm_prefork_module>
    149         LoadModule cgi_module modules/mod_cgi.so
    150 </IfModule>
    配置文件最后修改的
<Directory "/usr/local/awstats/wwwroot">
    Options None
    AllowOverride None
    #Order allow,deny
    #Allow from all
    Require all granted
</Directory>

[root@bogon tools]# rm -rf /usr/local/httpd/logs/error_log  删除以前日志文件
[root@bogon tools]# rm -rf /usr/local/httpd/logs/access_log 
[root@bogon tools]# systemctl restart httpd
[root@bogon tools]# vi /etc/awstats/awstats.www.kgc.com.conf 
50        LogFile="/usr/local/httpd/logs/access_log"
[root@bogon tools]# mkdir /var/lib/awstats
[root@bogon tools]# cd /usr/local/awstats/tools/
[root@bogon tools]# chmod +x awstats_updateall.pl
[root@bogon tools]# ./awstats_updateall.pl now
浏览器上访问
:http://192.168.73.129/awstats/awstats.pl?config=www.kgc.com 
、
设置周期任务 每隔五分钟执行一次
[root@bogon tools]# crontab -e 
no crontab for root - using an empty one
crontab: installing new crontab
[root@bogon tools]# crontab -l
*/5 * * * * /usr/local/awstats/tools/awstats_updateall.pl now
[root@bogon tools]# 
        

  • 5
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值