apache配置与应用

构建虚拟 Web 主机

apache虚拟web主机指在同一台服务器运行多个web站点,其中每一个站点实际上并不独立占用整个服务器,因此被称为web主机,可以充分利用服务器的硬件资源,大大降低网站的构建成本

http服务支持三种虚拟主机类型

1,基于区域域名的(最普遍)为每个虚拟主机使用不同的域名,但是其对应的 IP 地址是相同的

2,基于ip地址为每个虚拟主机使用不同的域名,且各自对应的IP地址也不相同。 这种服务需要服务配置多个网络接口

3,基于端口 使用不同的tcp端口号因此用户再浏览不同虚拟站点时需要同时指定端口号才能访问

物理设备,网卡的聚合bond模式负载均衡,主备

基于域名的虚拟主机

为虚拟机提供域名解析

DNS部署脚本

apache配置与应用_第1张图片

#*.   (#删除第一个.固定格式##删除最后一个.)从左往右看

%.*  (%删除从右往左看第一个点%%.*从右向左最后一个点)

apache配置与应用_第2张图片

管理服务器

本地创建DNS通过域名 区分提供各种服务的服务器

只需改域名映射关系就能连接服务

DNS正向解析

配置cd /opt/

vim /etc/named.conf

配DNS服务器

//主配置文件allow-query { any; }

vim /etc/named.rfc1912.zones

配置;cd /etc/named

vim dxl .come.zone

 

临时dns配置

echo "192.168.232.105 www.benet.com" >> /etc/hosts

echo "192.168.232.105 www.accp.com" >> /etc/hosts

mkdir -p /var/www/html/{accp,benet}

echo "

www.benet.com

" > /var/www/html/benet/index.html

echo "

www.accp.com

" > /var/www/html/accp/index.html

vim /usr/local/httpd/conf/extra/httpd-vhosts.conf

apache配置与应用_第3张图片

4.设置访问控制

#设置目录访问权限

Options None #不启用任何的服务器特性

AllowOverride None #不允许重写Apache默认配置

Require all granted #允许所有主机访问

systemctl restart httpd

目录的访问控制(默认拒绝所有)

#vim /etc/httpd/conf.d/vhosts.conf #RPM或YUM安装的虚拟主机配置文件路径

vim /usr/local/httpd/conf/httpd.conf  #源安装

取消483行注释

Include conf/extra/httpd-vhosts.conf #加载独立的配置文件

 options默认特性

除了 multiviews的所有特性

基于IP地址的虚拟主机

ifconfig ens33:0 192.168.80.100 netmask 255.255.255.0

vim /usr/local/httpd/conf/extra/httpd-vhosts.conf

配置accp域名和benet

vim /usr/local/httpd/conf/httpd.conf

--53行--插入

Listen 192.198.80.100:80

指定地址apache配置与应用_第4张图片

基于端口号虚拟主机

vim httpd.conf

先监听端口8080

apache连接保持

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

keepAlive on(可在高并发时打开,并发量不高时·关闭)

maxkeepAliverequests 100  #最大请求

KeepAliveTimeout 5 响应时间

取消注释

构建

根目录

以根为起点

别名目录(虚拟目录)

alias

网页实际位置 alias目录下的目录/文件

apache配置与应用_第5张图片

apache日志分割工具

自带 $(data %Y%m%d)年月日 86400分割周期一天

--275行--修改

ErrorLog "| /usr/local/bin/rotatelogs -l /var/log/httpd/error_%Y%m%d.log 86400" #分割错误日志

该命令告诉Apache使用rotatellogs每天(-l)轮换错误日志文件,文件名格式为“error_YYYYMMDD.log”(%Y%m%d),并将每个日志文件保存86400秒(24小时)

存储在/var/log/httpd目录下

--305行--修改

CustomLog "| /usr/local/bin/rotatelogs -l /var/log/httpd/access_%Y%m%d.log 86该命令告诉Apache使用rotatellogs每天(-l)轮换访问日志文件,文件名格式为存放在/var/log/httpd目录下“access_YYYYMMDD.log”(%Y%m%d),并将每个日志文件保存86400秒(24小时)400"

combined #分割访问日志

-l使用本地时间计算

apachctl -t检查

apache配置与应用_第6张图片

通过脚本有可能报错再重启即可

apache 网页访问控制

网页用户授权限制

apache配置与应用_第7张图片

你可能感兴趣的:(服务器,linux,运维)