1.apache服务简介
作用:搭建web服务软件
软件名:httpd
端口号:tcp80
2.apache工作过程:
第一步:连接过程:客户端通过浏览器输入的url采用http协议与服务器之间通过tcp三次握手建立连接。
第二步:请求过程:向服务器请求的网站的主页资源,通常默认主页为index.htnl、index.php、index.jsp等文件名。
第三步:应答过程:服务器将主页文件传送给客户机浏览器。
第四部:关闭连接:为了避免一直占用服务器资源,数据传送完毕会走动关闭tcp连接。
3.部署思路
(1)关闭防火墙和selinux
(2)安装apache服务端的软件httpd
(3)设置httpd.conf配置文件,重启服务
(4)客户端访问apache服务器
(5)apache的运维管理:查看apache服务器的日志文件
4.操作部署
(1)环境部署(服务器:192.168.11.11)
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
getenforce
(2)安装软件并做本地测试
rpm -q httpd
yum install -y httpd httpd-manual
rpm -qc httpd
htppd的各种配置文件:
systemctl restart httpd
systemctl enable httpd
创建测试主页:
echo ‘welcome to my apache’ > /var/www/html/index.html
curl 127.0.0.1
4.apache虚拟主机配置
第一种:基于端口:服务器只有一个ip地址,但每个网站绑定在不同端口上。
第二种:基于ip,在服务器网卡上设置多个ip,每个网站绑定在不同的ip地址。
第三种:基于域名(常用):服务器只有一个ip地址,给服务器设置多个主机名,每个网站绑定在不同的主机名上。
第一种基于端口的虚拟主机:
mkdir -pv /var/www/html/li 创建网站的根目录
echo www.li.com > /var/www/html/li/index.html 创建li网站的测试网站
mkdir -pv /var/www/html/lmj
echo www.lmj.com > /var/www/html/lmj/index.html
配置文件模板:
vim /etc/httpd/conf.d/li.conf
重启服务:systemctl restart httpd
测试:
curl 192.168.11.11:8081
curl 192.168.11.11:8082
浏览器分别输入看效果:192.168.11.11:8081
192.168.11.11:8082
第二种:基于ip地址的虚拟主机
ifconfig ens33:1 192.168.11.111/24 up
ip a
vim /etc/httpd/conf.d/li.conf
重启服务:systemctl restart httpd
测试:
curl 192.168.11.11
curl 192.168.11.111
浏览器分别输入看效果:192.168.11.11
192.168.11.111
第三种:基于域名的虚拟主机
vim /etc/hosts
添加:192.168.11.11 www.li.com www.lmj.com
vim /etc/httpd/conf.d/li.conf
重启服务:systemctl restart httpd
测试:
curl www.li.com
curl www.lmj.com
5.apache访问控制
第一种:基于ip的访问控制
第二种:基于用户认证的访问控制
第一种基于ip的访问控制:
注释:
order allow,deny 访问顺序先允许后拒绝
allow from all 允许任何主机访问
denny from 192.168.11.1 拒绝此ip主机访问
vim /etc/http/conf.d/li.conf
重启服务:systemctl restart httpd
浏览器访问不到内容:
curl 192.168.11.11
第二种:基于用户认证的访问控制
注释:
AuthName web1 授权对话框
AuthType Basic 授权类型为Basic基本验证
AuthUserFile /etc/httpd/.htppasswd 授权用户的账号文件
require user lily 允许账号文件中的lily访问
vim /etc/httpd/conf.d/li.conf
htpasswd -cm /etc/httpd/htuser lucy
htpasswd -m /etc/httpd/htuser lily
cat /etc/httpd/htuser
systemctl restart httpd
测试:
curl 192.168.11.11
curl 192.168.11.11 -u lily:0
结果如下: