Apache配置与应用

httpd服务支持的虚拟主机类型包括以下三种:

1.基于域名:为每个虚拟主机使用不同的域名,但是其对应的 IP 地址是相同的。

2.基于IP地址:为每个虚拟主机使用不同的域名,且各自对应的IP地址也不相同。这种方式需要为服务器配备多个网络接口,因此应用并不是非常广泛。

3.基于端口:这种方式并不使用域名、IP地址来区分不同的站点内容,而是使用了不同的TCP端口号,因此用户在浏览不同的虚拟站点时需要同时指定端口号才能访问。

一、基于域名的虚拟主机

①为虚拟主机提供域名解析
写一个自动化的dns脚本
在这里插入图片描述
在这里插入图片描述
然后再加一个同样ip的不同域名
进入vim /etc/naemd.rfc1912.zones(区域配置文件)修改
在这里插入图片描述
在这里插入图片描述

②为虚拟主机准备网页文档
在这里插入图片描述

③添加虚拟主机配置
[root@www /]# vim /usr/local/httpd/conf/extra/vhosts.conf

在这里插入图片描述

④设置访问控制
在这里插入图片描述

⑤加载独立的配置文件
在这里插入图片描述
在这里插入图片描述
⑥验证
在这里插入图片描述
在这里插入图片描述

二、基于ip的虚拟主机

①设置一个虚拟ip
在这里插入图片描述

②添加主机配置和设置访问控制
在这里插入图片描述

③修改apache主配置文件
在这里插入图片描述

④重启服务和验证结果
在这里插入图片描述
在这里插入图片描述

三、基于端口

①修改虚拟主机配置文件
在这里插入图片描述

②修改apache主配置文件
在这里插入图片描述

③重启服务和验证结果
在这里插入图片描述
在这里插入图片描述

四.Apache 连接保持

vim /usr/local/httpd/conf/extra/httpd-default.conf
KeepAlive On			#设置是否打开连接保持功能,后面接OFF表示关闭,接ON表示打开。可以根据网站的并发请求量决定是否打开,即在高并发时打开连接保持功能,并发量不高时关闭此功能。
 
MaxKeepAliveRequests 100		#用于设置在一次长连接中可以传输的最大请求数量,超过此最大请求数量就会断开连接,最大值的设置决定于网站中网页的内容,一般设置数量会多于网站中所有的元素。
 
KeepAliveTimeout 5		#设置来自同一个客户端一次连接多次请求之间的最大间隔时间,即两次请求之间超过该时间连接就会自动断开,从而避免客户端占用连接资源。

五.构建Web虚拟目录与用户授权限制

创建用户认证数据文件

cd /usr/local/httpd/bin
./htpasswd -c /usr/local/httpd/conf/user zhangsan
./htpasswd /usr/local/httpd/conf/user lisi
#-c选项表示新建用户数据文件,缺省时则表示指定的用户数据文件已经存在,用于添加新的用户或修改现有用户的密码。
 
 
cat /usr/local/httpd/conf/user 		#确认用户数据文件

sj密码123123 sjj密码123456
添加用户授权配置

vim /usr/local/httpd/conf/httpd.conf
--末行添加--
Alias /test /var/www/html/test		#设置虚拟目录的根目录,/test为虚拟目录名称	
		
<Directory "/var/www/html/test">				#设置虚拟目录配置区域
	AuthName "Hello!"							#定义受保护的领域名称,会在认证对话框中显示
	AuthType Basic								#设置认证的类型,Basic表示基本认证
	AuthUserFile /usr/local/httpd/conf/user		#设置用于保存用户账号和密码的认证文件的路径
	Require valid-user							#开启用户认证,只有认证文件中的合法用户才能访问
   #authgroupfile /usr/local/httpd/conf/group	#设置用于保存组账号和密码的认证文件的路径
   #Require user zhangsan						#仅允许指定用户访问
   #Require group zhangsan						#仅允许指定组访问		
</Directory>

在这里插入图片描述

验证用户访问授权

mkdir -p /var/www/html/test
echo "<h1>this is vdir test</h1>" > /var/www/html/test/index.html
systemctl restart httpd

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

六.Apache 日志分割

使用Apache 自带 rotatelogs 分割工具,将 Apache 的日志进行按每天的日期自动分割

 vim /usr/local/httpd/conf/httpd.conf
--275行--修改
ErrorLog "| /usr/local/bin/rotatelogs -l /var/log/httpd/error_%Y%m%d.log 86400"		#分割错误日志
--305行--修改
CustomLog "| /usr/local/bin/rotatelogs -l /var/log/httpd/access_%Y%m%d.log 86400" combined	#分割访问日志
 
 
#开头的 | 为管道符号。
#-l选项表示使用本地时间为时间基准。
#86400表示一天,即每天生成一个新的日志文件。
 
mkdir /var/log/httpd			#创建分割后的日志文件保存目录
systemctl restart httpd
 
 
浏览器访问
http://192.168.80.10
ls /var/log/httpd

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值