HTTP图解阅读笔记(1)

HTTP图解

Posted by EWL on October 7, 2018

虚拟主机

在使用了虚拟主机之后,会出现一台服务器上托管多个域名,而一个服务器的IP是固定的,这也就是说,当客户端向服务端发起请求之后,请求到达服务端时需要去区别同一个IP下究竟需要访问哪一个域名。 在相同的 IP 地址下,由于虚拟主机可以寄存多个不同主机名和域名的 Web 网站,因此在发送 HTTP 请求时,必须在Host 首部内完整指定主机名或域名的 URI。(URI统一资源标识符)

通信数据转发程序

  • 代理 代理是一种有转发功能的应用程序,它扮演了位于服务器和客户端“中间人”的角色,接收由客户端发送的请求并转发给服务器,同时也接收服务器返回的响应并转发给客户端。 类似于charles这种软件就是典型的代理软件,可以用于劫持转发。

  • 网关 网关是转发其他服务器通信数据的服务器,接收从客户端发送来的请求时,它就像自己拥有资源的源服务器一样对请求进行处理。有时客户端可能都不会察觉,自己的通信目标是一个网关。

利用网关可以由 HTTP 请求转化为其他协议通信 举例子: 小明是客户端,会说英语的父母是网关,小明想和一个外国小朋友交朋友,但是他不会说英语,这时可以找父母,让父母帮忙传达自己的话,父母就可以和外国小朋友交流,然后再转达给小明,这样就完成了一次请求通话,这就非常浅显的解释了一下网关的作用。无论是协议还是语言,甚至是

  • 隧道 隧道是在相隔甚远的客户端和服务器两者之间进行中转,并保持双方通信连接的应用程序。 隧道的主要作用只是为安全的通信创建通道,但是实际上客户端不用去在意隧道的存在。

  • 区别 代理与隧道是应用程序,而网关是服务器。

保存资源的缓存

缓存指的是存在于代理服务器上或者客户端本地内存中的资源副本。

缓存服务器是代理服务器的一种,并归类在缓存代理类型中。换句话说,当代理转发从服务器返回的响应时,代理服务器将会保存一份资源的副本。

参考资料

网关(Gateway)详解