利用单台虚拟主机实现多个域名
在一台物理主机上,可以实现多个虚拟服务器,它们可以运行各自不同的网站。
当客户端发送一个http请求时,先会通过DNS服务器获得域名和ip地址的映射,然后通过ip地址来访问服务器。这就有个问题出现了,当服务器收到请求时,究竟是要访问那个域名的网站就有歧义了,因此在发送HTTP请求时,必须在Host首部内完整指定主机名或域名的URI。
通信数据转发程序:代理,网关,隧道
-
代理
代理作为客户端和服务器的“中间人”。客户端发来的请求报文通过代理并转发给服务器,同样的,服务器的响应报文通过代理并转发给客户端。
在转发时需要附加Via首部字段以标记出经过的主机信息。
为什么使用代理?
缓存技术减少网络带宽,对特定网站进行访问控制,获取访问日志。
代理有两种类型:
-
缓存代理
代理转发响应时,会预先将资源的副本存储在代理服务器上,当代理再次收到对相同资源进行的请求时,就会将之前的缓存直接作为响应返回。 -
透明代理
转发或响应时,不对报文做任何加工。反之,对报文内容加工的代理为非透明代理。 -
网关
网关.jpg
通过网关可以和非HTTP服务器通信。
- 隧道
隧道要求建立一条与其他服务器的通信线路,使用SSL等加密手段进行通信。目的是确保能进行安全的通信。
网友评论