当前位置:   article > 正文

Apache配置与应用与日志管理_apache yingyongrizhi

apache yingyongrizhi

Apache配置剖析

1.1 Apache连接保持

1.1.1 Apache连接保持相关参数

1.KeepAlive (默认是On)
是否打开连接保持,OFF关闭,ON打开
2.KeepAlive Timeout(默认超时时间5,保持连接状态的时间)
一次连接多次请求之间的最大间隔时间,两次请求超过该时间连接断开
3.MaxKeepAliveRequests(默认100)
一次长连接能够传输的最大请求数量

Apache 基础服务配置

1.连接保持

[root@server1 ~]# vi /usr/local/httpd/conf/extra/httpd-default.conf 
  • 1

2.默认配置

KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 5
  • 1
  • 2
  • 3

在这里插入图片描述

在这里插入图片描述
4.查看日志文件

[root@server1 ~]# cd /usr/local/httpd/logs/
[root@server1 logs]# ls -lh

[root@server1 logs]# tail -5 access_log    查看访问的客户机ip地址
  • 1
  • 2
  • 3
  • 4

在这里插入图片描述

1.2 Apache访问控制

1.2.1 配置访问控制

Require all granted :允许所有主机访问
Require all denied : 拒绝所有主机访问
Require local: 仅允许本地主机访问
Require [not] host <主机名或域名列表>:允许或拒绝指定主机或域名访问
Require [not] ip <IP 地址或网段列表>:允许或拒绝指定IP地址网络访问
使用not禁止访问时要讲其置于容器中并在指定相应的限制策略

1.2.2 用法解析

拒绝某一个指定地址访问网页

方法一:在网页站点目录中设置权限

[root@server1 ~]# vi /etc/httpd.conf
[root@server1 ~]# systemctl start httpd
[root@server1 ~]# systemctl status httpd

Order deny,allow 顺序,先拒绝后允许
Deny from 20.0.0.1/32
方法二

[root@server1 logs]# vi /etc/httpd.conf 
[root@server1 logs]# systemctl start httpd
[root@server1 logs]# httpd -t
[root@server1 logs]# netstat -anpt | grep httpd
[root@server1 logs]# tail error_log 

<RequireAll>
   Require all granted
   Require not ip 20.0.0.1/32
</RequireAll>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

1.3 Apache访问控制概述

1.3.1 Apache访问控制

作用
控制对网站资源的访问
为特定的网站目录添加服务授权

常用访问控制方式
客户机地址限制
用户授权限制

1.4 用户授权限制

1.4.1 创建用户认证数据库

[root@www ~]# cd /usr/local/ttpd/
[root@www httpd]# bin/htpasswd -C /usr/local/httpd/conf/ .awspwd

-C :新建使用,再次建用户则不需要
/usr/local/httpd/conf/ .awspwd:新建密码文件

webadmin   认证用户
New password:
Re-type new password:
Adding password for user webadmin
[root@www httpd]# cat /usr/ocal/httpd/conf/.awspwd 确认用户数据库文件
webadmin:$apr1 $L _53Ws/ Y2$3L 4xhs4zZKDbJb.9p 1fNg.
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

1.4.2 添加用户授权配置

[root@www ~ ]# vim /etc/httpd/conf/httpd.conf

<Directory "/usr/local/httpd/htdocs">

AuthName "DocumentRoot"  受保护的领域名称
AuthType Basic   认证类型
AuthUserFile /etc/httpd/conf/ . awspwd用户认证账号文件
Require valid-user       要求通过认证才能访问
</Directory>
[root@www ~ ]# systemctl restart httpd
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

1.4.3 验证用户访问授权

用户名
密码

1.5 项目小试
1.5.1 允许授权用户登录

[root@server1 ~]# vi /etc/httpd.conf

ServerName www.aa.com:80
  • 1
  • 2
  • 3

1.创建数据库文件

[root@server1 ~]# htpasswd -c /usr/local/httpd/conf/.awspwd tom
-C :新建使用,再次建用户则不需要
/usr/local/httpd/conf/ .awspwd:新建密码文件
tom:  需要认证的用户名
  • 1
  • 2
  • 3
  • 4

2.确认用户数据库文件

[root@server1 ~]# cat /usr/local/httpd/conf/.awspwd  
[root@server1 ~]# vi /etc/httpd.conf 
  • 1
  • 2

3.配置编辑文件

[root@server1 ~]# vi /etc/httpd.conf 
[root@server1 ~]# systemctl start httpd
[root@server1 ~]# vi /etc/hosts

Order allow,deny   顺序先允许,后拒绝
Allow from all        允许所有
AuthName "www.aa.com" 认证域名
AuthType Basic      认证类型基本
AuthUserFile /usr/local/httpd/conf/.awspwd  认证文件路径
Require valid-user  允许授权用户登录
#Require all granted
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
20.0.0.14   www.aa.com
  • 1

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

二 Apache日志管理

2.1 日志分割

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

第三方工具cronolog
●rpm安装cronolog工具
1.将准备好的cronolog软件包放进服务器系统中
2.rpm -ivh 安装cronolog工具
●配置网站日志文件转交给cronolog分割处理
配置格式
ErrorLog “l cronolog命令的绝对路径 日志文件路径/网站名.error_%Y%m%d.log”

CustomLog “I cronolog命令的绝对路径 日志文件路径/网站名.access_%Y%m%d.log” combined
示例:

[root@localhost ~]# vim /etc/httpd/conf/httpd.conf    ##进入apache的主配置文件
...省略内容
ErrorLog "| /usr/sbin/cronolog  logs/www.test.com.error_%Y%m%d.log"

CustomLog "| /usr/sbin/cronolog  logs/www.test.com.access_%Y%m%d.log" combined
...省略内容
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

注意:
和apache自带的rotatelogs工具比,配置换了cronolog命令的绝对路径,少了-l和86400

三AWStats日志分析系统介绍

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

部署AWStats日志分析系统详细过程
1.安装AWStats软件包

[root@localhost opt]# mkdir /usr/local/awstats
[root@localhost opt]# tar zxf awstats-7.6.tar.gz -C /usr/local/awstats
  • 1
  • 2

2.为要统计的站点建立配置文件

[root@localhost ~]# cd /usr/local/awstats/awstats-7.6/tools/
[root@localhost tools]# ls
awstats_buildstaticpages.pl  dolibarr            maillogconvert.pl   xslt
awstats_configure.pl         geoip_generator.pl  nginx
awstats_exportlib.pl         httpd_conf          urlaliasbuilder.pl
awstats_updateall.pl         logresolvemerge.pl  webmin
[root@localhost tools]# ./awstats_configure.pl     ##软件包解压后的tools工具中自带配置脚本
...省略内容
Enter full config file path of your Web server.
Config file path ('none' to skip web server setup):
> /etc/httpd/conf/httpd.conf         ##输入Web服务器的主配置文件地址
What is the name of your web site or profile analysis ?
Your web site, virtual server or profile name:
> www.test.com                         ##输入域名
...省略内容
-----> Create config file '/etc/awstats/awstats.www.test.com.conf'      ##为要统计的站点建立的配置文件
 Config file /etc/awstats/awstats.www.test.com.conf created.
...省略内容
You can also read your statistics for 'www.test.com' with URL:
> http://localhost/awstats/awstats.pl?config=www.test.com     ##AWStats日志分析系统的登录地址
其他操作都是y 或者 回车
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21

3.编辑要统计的站点主配置文件参数

[root@localhost tools]# vim /etc/httpd/conf/httpd.conf 
...省略内容
<Directory "/usr/local/awstats/awstats-7.6/wwwroot">        ##搜索“awstats”可以快速定位
    Options None
    AllowOverride None
  #Order allow,deny              ##添加注释
  #Allow from all                   ##添加注释 
  Require all granted              ##允许所有人访问
</Directory>
...省略内容
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

4.修改刚才新建的站点统计配置文件

[root@localhost tools]# vim /etc/awstats/awstats.www.test.com.conf
...省略内容
LogFile="/var/log/httpd/access_log"            ##修改访问日志文件位置
...省略内容
DirData="/var/lib/awstats"                            ##awstats文件默认不存在,需要创建
...省略内容
[root@localhost tools]# mkdir /var/lib/awstats
[root@localhost tools]# systemctl start httpd
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

5.重启apache服务后,登录AWStats日志分析系统的地址

[root@localhost named]# systemctl restart httpd
http://www.test.com/awstats/awstats.pl?config=www.aa.com
  • 1
  • 2

6.使用awstats软件包tools目录下的更新脚本更新数据

[root@localhost named]# cd /usr/local/awstats/awstats-7.6/tools/
[root@localhost tools]# ls
awstats_buildstaticpages.pl  dolibarr            maillogconvert.pl   xslt
awstats_configure.pl         geoip_generator.pl  nginx
awstats_exportlib.pl         httpd_conf          urlaliasbuilder.pl
awstats_updateall.pl         logresolvemerge.pl  webmin
[root@localhost tools]# ./awstats_updateall.pl now
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

7…/awstats_updateall.pl now每次手动输入不现实,可结合crontab计划性任务更新数据

[root@localhost tools]# crontab -e
*/5 * * * * /usr/local/awstats/tools/awstats_updateall.pl now
  • 1
  • 2

8.优化awstats网页地址

[root@localhost tools]# cd /var/www/html/
[root@localhost html]# ls
[root@localhost html]# vim aws.html
<html>
 <head>
  <meta http-equiv=refresh content="0;
   url=http://14.0.0.40/awstats/awstats.pl?config=www.test.com">
 </head>
 <body></body>
</html>
##这样就可以使用http://14.0.0.40/aws.html来访问了
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/810889
推荐阅读
相关标签
  

闽ICP备14008679号