搭建apache服务

发布时间 2023-11-17 10:52:08作者: 惠恒博

一.web概述

基于B/S(Browser/Server)架构的网页服务,服务端提供网页,浏览器下载并显示网页

http协议:超文本传输协议

Daemon(守护进程)

实现Web服务的软件:httpd(Apache)、Nginxtomcat等

Hyper  Text  Markup  Language,超文本标记语言

Hyper  Text  Transfer  Protocol,超文本传输协议

二.Web服务器配置

配置文件: /etc/httpd/conf/httpd.conf

调用配置文件:/etc/httpd/conf.d/*.conf

日志存放位置:/usr/local/apache/logs

Listen:监听地址:端口(80)

ServerName:本站点注册的DNS名称(空缺)

DocumentRoot:网页根目录(/var/www/html)

DirectoryIndex:起始页/首页文件名(index.html)

三.构建Web服务器

1.关闭selinux和防火墙
]# setenforce 0
]# firewall-cmd --set-default-zone=trusted
2.安装httpd软件
]# yum -y  install  httpd
]# rpm -q  httpd
3.书写网页文件
]# ls  /var/www/html/
]# echo hello world!  Web  >  /var/www/html/index.html
4.启动服务
]# >  /etc/resolv.conf    #删除DNS服务器指定
]# systemctl  start  httpd   &&   systemctl enable  httpd
]# curl  192.168.4.7       #测试访问

四.网页根目录

DocumentRoot:网页文件的根目录(/var/www/html)

网页文件的根目录:存放网页文件的路径,也是httpd软件寻找网页文件的路径

]# vim    /etc/httpd/conf/httpd.conf
  DocumentRoot "/var/www/myweb"  #把/var/www/里面的html换成myweb
]# mkdir  /var/www/myweb
]# systemctl  restart  httpd     #重启httpd服务
]# curl 192.168.4.7
wo shi myweb

五.访问规则

针对存放网页文件路径,具有访问控制

默认继承父目录的访问规则                    

除非对该目录有单独访问控制规则配置

默认情况下只有/var/www/下是允许所有人访问

]# vim    /etc/httpd/conf/httpd.conf
<Directory  />                 #针对/进行访问控制
    Require all denied       #拒绝所有人访问
</Directory>
<Directory   "/var/www">    #针对/var/www进行访问控制
    Require all granted          #允许所有人访问
</Directory>

六.实际路径与网络路径

实际路径:网页文件在服务器存放的路径,例如:/abc/

网络路径:在浏览器中输入的路径,例如:firefox   192.168.4.7

]# mkdir  /abc/nsd
]# echo wo shi nsd > /abc/nsd/index.html
]# curl  192.168.4.7/nsd/

七.监听端口

Listen:监听地址:端口(80)

端口:数字编号,标识作用。标识程序与协议

http协议默认端口:80

]# vim /etc/httpd/conf/httpd.conf
42行  Listen  80
43行  Listen  8000
]# systemctl restart httpd
]# curl  192.168.4.7
wo shi abc
]# curl  192.168.4.7:8000    #指定端口号
wo shi abc

八.虚拟主机

由同一台服务器提供多个不同的Web站点

1.区分方式

基于域名的虚拟主机             

基于端口的虚拟主机

基于IP地址的虚拟主机

2.虚拟配置

为每个虚拟站点添加配置

<VirtualHost   IP地址:端口>

       ServerName   此站点的DNS名称

       DocumentRoot   此站点的网页根目录

</VirtualHost>

3.配置文件路径

/etc/httpd/conf/httpd.conf    #主配置文件

/etc/httpd/conf.d/*.conf       #调用配置文件

4.基于端口的虚拟主机

Listen:监听IP地址: 监听端口(80)

端口:数字编号起到标识作用,标识协议或者进程

http协议默认端口:80

建议自定义端口时大于1024,端口的极限65535 

]# vim   /etc/httpd/conf.d/nsd01.conf
Listen  8080
<VirtualHost     *:8080>          #启用虚拟Web主机的功能
  ServerName    www.baidu.com       #设置网站名称
  DocumentRoot    /var/www/baidu  #设置网页文件存放路径
</VirtualHost>                    #配置结束v
<VirtualHost    *:80>
  ServerName   www.qq.com
  DocumentRoot   /var/www/qq
</VirtualHost>
<Directory   "/var/www/qq">
      Options Indexes FollowSymLinks    #显示目录内容
</Directory>
]# systemctl restart httpd 
]# curl  www.qq.com:8080
woshi baidu
]# firefox  http://192.168.4.7