HTTP协议-web服务器

HTTP协议- web服务器

1

用单台虚拟主机实现多个域名

一台服务器可以绑定多台虚拟主机。每一个虚拟主机都有一个域名,但是会存在一个问题,每一个虚拟主机的ip地址是相同的,在请求时要做一个区分。

因此在发送 HTTP 请求时,必须在 Host 首部内完整指定主机名或域名的 URI。

2

通信数据转发程序的三种方式

网关

转发其他服务器通信数据的服务器

接收客户端发送过来的请求, 就像自己拥有资源的源服务器一样对请求进行处理,有时候客户端不会察觉到。

他的通信目标是一个网关

利用网关可以由http请求转化为其他网络协议通信,网关的通信机制和代理很类似,而网关能是通信线路上的服务器提供非HTTP协议服务

强调一点 websocket的通信就是利用网关来实现的,

利用网关能提高通信的安全性,因为可以在客户端与网关之间的通信线路上加密以确保连接安全。

代理

作为客户端和服务端的中间人 

转发客户端请求给服务端

同时也会将服务端请求转发给客户端

每次通过代理服务转发请求或响应时,都会添加一个Via的首部字段已标记经过的主机信息。

使用代理服务器的理由

通过代理服务器对数据进行缓存,减少网络带宽的流量

缓存代理

代理服务器在处理响应请求时,预先将源服务器的数据缓存在代理服务器上,下次客户端发送请求时,可以直接在代理服务器上返回数据。

透明代理

不对报文进行任何加工的代理类型被成功透明代理。

反之被称为非透明代理

隧道

在相隔甚远的客户端和服务器之间进行中转,并保持双方通信连接的应用程序

3

缓存

缓存是指 代理服务器或客户端本地磁盘保存的资源副本

利用缓存可以减少对源服务的访问, 减少了通信的流量,和通信时间。

缓存服务器的优势 减少客户端对源服务的请求,可以直接就近从代理服务上获取资源,而源服务也不必多次处理相同的请求。

4

缓存的有效期限

缓存数据可以存在客户端和代理服务器,但是会出现源服务数据更新了,但是客户端和代理服务上的数据没有更新的问题,所以就出现了缓存的有效期限。

客户端的缓存

浏览器的缓存被称为临时网络文件,这个词语在进行电脑的垃圾清理时,会出现临时网络文件。

当客户端判定缓存过期,会向源服务器确认资源的有效性,若判定缓存失效,客户端会直接向源服务器请求数据,不会走缓存。