HTTP2.2

套接字由IP地址和端口号组成
CentOS6:2.2
rpm -V httpd:查看有没有改动


Paste_Image.png

HTTP2.2_第1张图片
Paste_Image.png

HTTP2.2_第2张图片
Paste_Image.png

HTTP2.2_第3张图片
Paste_Image.png

1.关闭防火墙和selinux

HTTP2.2_第4张图片
clipboard.png

2.启动httpd服务


clipboard.png

3.yum -y install httpd-manual安装帮助手册
官方帮助手册

HTTP2.2_第5张图片
clipboard1.png

启动错误问题:

HTTP2.2_第6张图片
clipboard2.png
clipboard3.png

clipboard4.png

HTTP2.2_第7张图片
clipboard5.png

HTTP2.2_第8张图片
clipboard6.png

clipboard7.png

clipboard8.png

clipboard9.png
HTTP2.2_第9张图片
clipboard10.png

curl -I 自己的IP(可以查看自己的版本)

HTTP2.2_第10张图片
clipboard11.png

更改显示信息:/etc/httpd/conf/httpd.conf


clipboard12.png

去掉版本信息:

clipboard12.png

更改监听端口:/etc/httpd/conf/httpd.conf


HTTP2.2_第11张图片
clipboard13.png

可以同时监听,配置之前先把selinux关闭,因为用非标准端口会出错

HTTP2.2_第12张图片
clipboard14.png

持久连接:每个资源获取完之后不断开连接还会等待其他链接
设置:KeepAlive on|off
断开条件:数量限制:100 时间限制:以秒为单位


HTTP2.2_第13张图片
clipboard15.png

访问的是主网页

HTTP2.2_第14张图片
clipboard16.png

HTTP2.2_第15张图片
clipboard17.png

访问不同的文件,文档的类型不同,如果不加后缀,他会扫描内容

HTTP2.2_第16张图片
clipboard18.png

MPM:多路处理模块
查看静态编译的模块 httpd -l  查看静态编译及动态装载的模块 httpd –M

clipboard19.png
clipboard20.png
HTTP2.2_第17张图片
clipboard21.png
clipboard22.png

用ab命令测试

clipboard23.png

prefork的默认配置:

HTTP2.2_第18张图片
clipboard24.png
HTTP2.2_第19张图片
Paste_Image.png
clipboard25.png
HTTP2.2_第20张图片
clipboard26.png
HTTP2.2_第21张图片
clipboard27.png

定义站点主页面:

clipboard28.png
HTTP2.2_第22张图片
clipboard29.png
HTTP2.2_第23张图片
clipboard30.png

更改主页面:


clipboard.png

403显示找不到主页面:


HTTP2.2_第24张图片
clipboard31.png

添加一个目录即可:
HTTP2.2_第25张图片
clipboard32.png
HTTP2.2_第26张图片
Paste_Image.png
clipboard33.png

HTTP2.2_第27张图片
clipboard34.png
clipboard35.png
clipboard36.png
HTTP2.2_第28张图片
clipboard37.png

(2) AllowOverride 与访问控制相关的哪些指令

可以放在指定目录下的 .htaccess(由AccessFileName指定)文件中,覆盖之前的 配置指令 只对语句有效
AllowOverride All: 所有指令都有效
AllowOverride None:.htaccess 文件无效
AllowOverride AuthConfig Indexes 除了AuthConfig 和Indexes的其它指令都无法覆盖

.htaccess放在所需要控制的目录下
HTTP2.2_第29张图片
clipboard38.png

HTTP2.2_第30张图片
clipboard39.png

(3) order和allow、deny

order:定义生效次序;写在后面的表示默认法则
Order allow,deny deny优先级高
Order deny,allow allow优先级高
Allow from, Deny from


HTTP2.2_第31张图片
clipboard40.png
clipboard41.png

拒绝文件类型:


clipboard42.png
HTTP2.2_第32张图片
clipboard43.png

字符集:


HTTP2.2_第33张图片
clipboard44.png

起别名:跳转到其他网站


HTTP2.2_第34张图片
clipboard45.png
clipboard46.png
clipboard47.png
clipboard48.png
clipboard49.png

基于用户的访问控制:

响应码为401,拒绝客户端请求,并说明要求客户端提供账号和密码
客户端用户填入账号和密码后再次发送 请求报文;认证通过时,则服务器发送响应的资源
 认证方式两种:
basic:明文
digest:消息摘要认证,兼容性差
我们这里先用basic:
验证文件:最好在conf.d目录下

-c覆盖:


clipboard50.png

-s添加:


HTTP2.2_第35张图片
clipboard1.png
HTTP2.2_第36张图片
clipboard2.png
HTTP2.2_第37张图片
clipboard3.png
clipboard4.png
HTTP2.2_第38张图片
clipboard5.png

include在前面,所以后面/app/website1文件覆盖了前面所包含的文件


HTTP2.2_第39张图片
clipboard6.png
HTTP2.2_第40张图片
clipboard7.png

401身份验证登录


HTTP2.2_第41张图片
clipboard8.png
clipboard9.png
HTTP2.2_第42张图片
clipboard10.png
HTTP2.2_第43张图片
clipboard11.png

针对组的验证


HTTP2.2_第44张图片
clipboard12.png

/etc/httpd/conf.d/.httpgroups
webs1:haha wangcai
webs2:hehe


HTTP2.2_第45张图片
clipboard13.png
clipboard14.png
HTTP2.2_第46张图片
clipboard15.png

来自于这个地址并且经过用户验证的可以通过:


HTTP2.2_第47张图片
clipboard16.png
来自于这个地址或者经过用户验证的可以通过

satisfy all|any
all 客户机IP和用户验证都需要通过才可以
any 客户机IP和用户验证有一个通过就可以

多虚拟主机:一个服务器上可以有三个网站

socket =IP + port IP和port有一个不一样就可以
vim /etc/httpd/conf/httpd.conf


clipboard17.png
clipboard18.png
HTTP2.2_第48张图片
clipboard19.png
HTTP2.2_第49张图片
clipboard20.png
HTTP2.2_第50张图片
clipboard21.png

同一IP不同端口:


HTTP2.2_第51张图片
clipboard22.png
clipboard23.png
HTTP2.2_第52张图片
clipboard24.png

解析的地址为192.168.25.106:80,但是能够返回不同的界面
CentOS6:
根据host名字解析

vim /etc/httpd/conf/test.conf


clipboard25.png

排在第一的是默认网站


HTTP2.2_第53张图片
clipboard26.png

CentOS7:服务器端


HTTP2.2_第54张图片
clipboard27.png

HTTP2.2_第55张图片
clipboard28.png

vim /etc/named.rfc 1912.zones
![clipboard29.png](http://upload-images.jianshu.io/upload_images/6854899-8a4f7879ac6a0090.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240

HTTP2.2_第56张图片
clipboard30.png

clipboard31.png

HTTP2.2_第57张图片
clipboard32.png

客户端:


HTTP2.2_第58张图片
clipboard33.png

HTTP2.2_第59张图片
clipboard34.png

虚拟目录:


HTTP2.2_第60张图片
clipboard35.png

状态页面:显示更加详细的信息


HTTP2.2_第61张图片
clipboard36.png

HTTP2.2_第62张图片
clipboard37.png

http是一种无协议状态:不能判断用户的身份
解决http协议无状态的方法:
cookie:客户端存放
session:服务器存放

http的请求报文:


HTTP2.2_第63张图片
clipboard39.png

HTTP2.2_第64张图片
clipboard40.png

http协议:

Method方法:
GET:从服务器获取一个资源
HEAD:只从服务器获取文档的响应首部
POST:向服务器输入数据,通常会再由网关程序继续处理
PUT:将请求的主体部分存储在服务器中,如上传文件
DELETE:请求删除服务器上制定的文档
TRACE:追踪请求到达服务器中间经过的代理服务器
OPTIONS:请求服务器返回对指定资源支持使用的请求方法

http协议状态码分类

status:
1xx:100-101 信息提示
2xx:200-206 成功
3xx:300-305 重定向
4xx:400-415 错误类信息,客户端错误
5xx:500-505 错误类信息,服务器端错误

200:成功,请求数据通过响应报文的entity-body部分 发送;OK
301:请求的URL指向的资源已经被删除;但在响应报文中通过Location指明了资源所处新位置;Moved Permanently(永久重定向,永久跳转,相当于旧的淘汰了)
302:响应报文Location指明资源临时新位置Moved Temporarily(临时跳转)
304:客户端发出了条件式请求,但服务器上的资源未曾发生改变,则通过响应此状态码通知客户端;Not Modified
401:basic验证,需要输入账号和密码认证方能访问资源;Unauthorized basic认证
403:请求被禁止;Forbidden没有访问权限
404:服务器无法找到客户端请求的资源;Not Found
500:服务器内部错误;Internal Server Error
502:代理服务器从后端服务器收到了一条伪响应,如无法连接到网关;Bad Gateway
503- 服务不可用,临时服务器维护或过载,服务器无法处理请求
504- 网关超时
HTTP2.2_第65张图片
clipboard41.png
HTTP2.2_第66张图片
clipboard42.png
clipboard43.png
HTTP2.2_第67张图片
clipboard50.png

你可能感兴趣的:(HTTP2.2)