《图解HTTP》读书笔记05

五、与HTTP协作的Web服务器


1. 用单台虚拟主机实现多个域名
  HTTP/1.1规范允许一台HTTP服务器搭建多个Web站点。由于虚拟主机(Virtual Host)功能的存在,即使在物理层面只有一台服务器,但在逻辑上可以表现出多台服务器的功能。
  在互联网上,域名通过DNS服务映射到IP地址之后访问目标网站。所以一台服务器内托管了不同的域名之后,当受到请求时就要弄清楚客户端究竟要访问哪个域名。客户端在发送HTTP请求时,通常要在Host首部内完整指定主机名或域名的URI,以确定访问的是哪一个域名或主机名。
2. 通信数据转发程序:代理、网关、隧道
  在进行HTTP通信时,除客户端和服务器以外,还有一些用于通信数据转发的应用程序,如代理、网关和隧道。这些应用程序和服务器可以将请求转发给通信线路上的下一站服务器,并且能接受从那台服务器发送的响应再转发给客户端。
  代理服务器的基本行为是接收客户端发送的请求后转发给其他服务器,代理服务器不改变请求URI。在HTTP通信中,可以级联多台代理服务器,这时需要附加Via首部字段以标记出经过的主机信息。代理服务器可以按两种基准分类,一种是是否使用缓存,另一种是是否会修改报文。
  缓存代理会预先将资源的副本保存在代理服务器上,当代理再次接收到对相同资源的请求时,就可以不从源服务器那里获取资源,而是将之前缓存的资源作为响应返回。
转发请求或响应时,不对报文做任何加工的代理服务器被成为透明代理,反之,对报文内容进行加工的代理被称为非透明代理。
  使用代理服务器的优点有:利用缓存技术减少网络带宽的流量,组织内部针对特定网站的访问控制等。
网关是转发其他服务器通信数据的服务器,它的工作机制和代理十分相似,但是网关可以为通信线路上的服务器提供非HTTP协议服务。利用网关能提高通信的安全性,因为可以在客户端与网关之间的通信线路上加密以确保连接的安全。
  隧道是在相隔甚远的客户端和服务器两者之间进行中转并保持双方通信连接的应用程序。隧道的目的时确保客户端能与服务器进行安全的通信。隧道本身不会去解析HTTP协议,即对客户端来说,隧道本身时透明的,客户端无需在意隧道的存在。
3. 保存资源的缓存
  缓存是指代理服务器或客户端本地磁盘上保存的资源副本。利用缓存可以减少对源服务器的访问,因此也就节省了通信流量和通信时间。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值