一,http协议介绍
http的全称:hyper text transfer protocol
意思是超文本传输协议
作用 :用户在客户端和web服务器之间传输文本数据
二,web服务
1.类型
静态网站:网站上所有的资源都是固定的
对应语言:html\js\jquery
动态网站:根据参数不同,数据不同的内容不一样
对应语言:PHP \Java
三,http协议的发展和特性
1.http/0.9
只支持文本传输
2,http/1.0
可以传输图片 ,文字, 音频
3.http/1.1
长连接机制
4.hhtp2
管道机制
四,状态码
200显示成功
301 ,302,304 显示响应成功
4XX错误响应
403权限拒绝
404 文件找不到
5XX 服务器配置错误
五,请求方法
GET:用于获取内容
POST:上传数据
六,http安装和配置
systemctl 指的是后台启动
查看端口状态
netstat -antp | grep httpd
关闭Selinux
setenforce 0
七,httpd相关文件目录
1.主配置文件
[root@localhost httpd]# pwd
/etc/httpd
编辑主配置文件
vim /etc/httpd/conf/httpd.conf
2.子配置文件
编辑子配置文件
vim /etc/httpd/conf.d
3.模块路径,配置文件
conf.modules.d
modules
4.日志
logs
5.PID进程文件
run
八,主配置文件解析
1.指定httpd的工作目录
ServerRoot "/etc/httpd"
2.监听端口
#Listen 12.34.56.78:80
Listen 80
3.指定加载模块
Include conf.modules.d/*.conf
4.指定启动进程的用户身份
User apache
Group apache
5.指定网站的主机名
#ServerName www.example.com:80
6.options
indexes,没有主页的情况下将其他页面罗列出来
Options Indexes FollowSymLinks
如下图:
7. 软连接的访问
Options Indexes FollowSymLinks
8.访问控制
Require all granted
9.基于用户名和密码的访问控制
创建用户 -c 创建用户
[root@localhost ~]# htpasswd -c /etc/httpd/.webuser tom
New password:
Re-type new password:
Adding password for user tom
编辑主配置文件
[root@localhost ~]# vim /etc/httpd/conf/httpd.conf
在/var/www/html 标签里加入
AuthType Basic
AuthName "Need to login:"
AuthUserFile "/etc/httpd/.webuser"
Require valid-user
在这里插入图片描
九,虚拟主机
1.作用
基于一台服务器部署多套网站,节约成本
2.类型
基于名称的虚拟主机,基于IP的虚拟主机,基于端口的虚拟主机
3.基于名称的虚拟主机
例子:创建
网站名称music.linux.com
网页目录/var/www/html/music
网站名称text.linux.com
网页目录/text
的名称虚拟主机
https://httpd.apache.org/
创建在网页目录下的过程
第一步:在子配置文件里编辑网站名称
[root@localhost ~]# vim /etc/httpd/conf.d/music.conf
进去编辑一下内容
<VirtualHost *:80>
ServerName music.linux.com
DocumentRoot "/var/www/html/music"
ErrorLog "/var/log/httpd/music_error.log"
CustomLog "/var/log/httpd/music_access.log" combined
</VirtualHost>
第二步:在网页文件下面创建music目录
[root@localhost ~]# mkdir /var/www/html/music
编辑music的网页文件
[root@localhost ~]# vim /var/www/html/music/index.html
进入里面编辑
<h1>周杰伦</h1>
编辑完保存退出
![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/7b05815cffc1467b8372c5393a526b3b.png
第三步:在本地的配置文件里面进行映射
192.168.204.129 music.linux.com
创建在根目录下的过程
先在子配置文件里面编写text的配置文件
[root@localhost ~]# vim /etc/httpd/conf.d/text.conf
在这个文件里面编辑以下内容
<VirtualHost *:80>
ServerName text.linux.com
DocumentRoot "/text"
ErrorLog "/var/log/httpd/music_error.log"
CustomLog "/var/log/httpd/music_access.log" combined
</VirtualHost>
<Directory "/text">
Require all granted
</Directory>
在根目录下面创建text目录
mkdir /text
然后在这个目录下面编写测试页显示的内容
[root@localhost ~]# vim /text/index.html
<h1>Text</h1>
主机文件做映射
在网页浏览