图解http学习笔记5.与HTTP协作的web服务器

来源:互联网 发布:透明屏幕软件下载 编辑:程序博客网 时间:2024/06/07 17:43

与HTTP协作的Web服务器

  • 与HTTP协作的Web服务器
    • 用单台虚拟主机实现多个域名
    • 通信数据转发程序代理网关隧道
      • 代理
        • 缓存代理
        • 透明代理
      • 网关
      • 隧道
    • 保存资源的缓存
      • 缓存的有效期限
      • 客户端的缓存

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

HTTP/1.1允许一台HTTP服务搭建多个Web站点。比如提供Web托管(Web Hosting Service)的供应商、可以用一台服务器为多位客户服务。也可以为每位客户持有的域名运行各自不同的网站。

即使物理层面只有一台服务器,只要有虚拟主机的功能,则可以假象已具有多台服务器。

一台服务器托管了不同的域名,使用DNS服务解析域名后,两者的访问IP地址会相同。

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

通信数据转发程序:代理、网关、隧道

HTTP通信时,除客户端和服务器端,还有一些用于通信数据转发的应用程序,如代理、网关、隧道,可配合服务器工作。

这些应用程序和服务器可将请求转发给通信线路上的下一站服务器,并且能接受从那台服务器发送的响应再转发给客户端。

代理

扮演位于服务器和客户端“中间人”的角色,接受由客户端发送的请求并转发给服务器,同时也接受服务器返回的响应并转发给客户端。

代理服务器的基本行为就是上述。代理不改变请求URI,直接发送给前方持有资源的目标服务器。反之亦同。

通信过程中,可级联多台代理服务器。请求和响应转会经过数台似锁链一样连接起来的代理服务器。转发时,需要附加Via首部字段仪表及出经过的主机信息。

使用代理服务器的原因:利用缓存技术减少网络带宽的流量,组织内部针对特定网站的访问控制,以获取访问日志为主要目的。。。。

代理使用方法有两种基类:1.是否使用缓存 2.是否修改报文

缓存代理

代理转发响应时,缓存代理(Caching Proxy)会预先将资源的副本(缓存)保存在代理服务器上。

当代理再次接受到对相同资源的请求时,就可以不从源服务器那里获取资源,直接将缓存的资源作为响应返回。

透明代理

转发请求或响应时,透明代理(Transparent Proxy)不对报文做任何加工。反之,对报文内容加工的则是非透明代理。

网关

网关是转发其他服务器通信数据的服务器,接受从客户端发送来的请求时,它就像自己拥有资源的源服务器一样对请求处理。

利用网关可以提高通信的安全性,因为可在客户端与网关之间的通信线路上加密以确保连接的安全。如网关连接数据库,使用SQL语句查询。

隧道

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

隧道按要求建立一条与其他服务器的通信路线,使用了SSL(Secure Sockets Layer)等加密手段进行通信。目的是确保客户端能与服务器进行安全的通信。

隧道本身不会解析HTTP。并在通信双方断开连接时结束。

保存资源的缓存

缓存是指代理服务器或客户端本地磁盘内保存的资源副本。利用缓存可减少对源服务器的访问,因此也就节省了通信流量和通信时间。

缓存服务器是代理服务器的一种。

缓存服务器的优势在于利用缓存避免多次从源服务器转发资源。

缓存的有效期限

缓存服务器上有缓存,由于具有时效性,不保证每次都会返回对同资源的请求。

源服务器上资源更新,换粗就会演变为“旧”资源。

客户端的要求、缓存的有效期也会影响资源的有效性。若判断资源失效,则从源服务器获取“新”资源。

客户端的缓存

客户端缓存称为临时网络文件(Temporary Internet File)

浏览器缓存如果有效,就可以从本地磁盘读取。

和缓存服务器相同,判断缓存失效后会再次请求新资源。


在HTTP之前出现的协议

FTP(File Transport Protocol)

传输文件使用的协议。被HTTP的流量(Traffic)超越,但现在仍在使用。

NNTP(Network News Transfer Protocol)

用于NetNews电子会议室内传送消息的协议。利用Web交换信息后,不怎么使用。

Archie

搜索anonymous FTP公开的文件信息的协议,不怎么使用。

WAIS(Wide Area Information Servers)

以关键词检索多个数据库使用的协议。被HTTP协议取代,不怎么使用。

Gopher

查找与互联网连接的计算机信息协议。被HTTP协议取代,不怎么使用。

1 0
原创粉丝点击