第二部分 HTTP结构——第5章Web服务器

Web服务器工作流程

  1. 建立连接——接受一个客户端连接,或者如果不希望与这个客户端建立连接,就将其关闭
  2. 接收请求——从网络中读取一条HTTP请求报文
  3. 处理请求——对请求报文进行解释,并采取行动
  4. 访问资源——访问报文中指定的资源
  5. 构建响应——创建带有正确首部的HTTP响应报文
  6. 发送响应——将响应回送给客户端
  7. 记录事务处理过程——将与已完成事务有关的内容记录在一个日志文件中

基本Web服务器请求的步骤

1.建立连接

Web服务器可以随意拒绝或立即关闭任意一条连接。有些Web服务器会因为客户端IP地址或主机名是未认证的,或者因为它是已知的恶意客户端而关闭连接。

2.接收请求

Web服务器集中几种请求服务的方式:

  1. 单线程Web服务器
  2. 多进程及多线程Web服务器
  3. 复用I/O的服务器
  4. 复用的多线程Web服务器

5.构建响应

重定向:

Web服务器有时会返回重定向响应而不是成功的报文。Web服务器可以将浏览器重定向到其他地方来执行请求。重定向响应由返回码3XX说明。Location响应首部包含了内容的新地址或优选地址的URL。重定向适用的情况。

  • 永久搬离的资源(301)
  • 临时搬离的资源(303和307)
  • URL增强
  • 负载均衡
  • 服务器关联
  • 规范目录名称

服务器关联

Web服务器上可能会有某些用户的本地信息;服务器可以将客户端重定向到包含了那个客户端信息的服务器上去。(303和307)

规范目录名称

客户端请求的URI是一个不带尾部斜线的目录名时,大多数Web服务器都会将客户端重定向到一个加了斜线的URI上,这样相对连接就可以正常工作了。(303和307)

有时会将这些经过扩展和状态增强的URL称为“胖URL”

展开阅读全文

微信公众平台企业号开发Java版第2课——接收消息与响应消息

01-26
©️2020 CSDN 皮肤主题: 技术黑板 设计师: CSDN官方博客 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值