《HTTP权威指南》笔记 -web服务器

web服务器

1.web服务器形式

1.通用软件web服务器

  • 如:免费的Apache软件
  • 微软的web服务器
  • sun的iPlanet

2.提供web页面的特定设备或计算机

  • web服务器设备:提前打包好的软硬件的结合
  • sun/cobalt raq web 设备

3.芯片嵌入式web服务器

  • 允许用户通过便捷的web浏览器接口来管理其消费者设备
  • IPi火柴头大小的web服务器

2.基本web服务器请求步骤

2.1建立连接

接受一个客户端;不希望连接则关闭

1.处理新连接

  • 从TCP连接中解析出IP地址
  • 服务器会将新的连接添加到现存web服务器连接表中,做好监视

2.客户端主机名识别

  • 对web 服务器进行”反向DNS“配置,将ip转换换位客户端主机名
  • 查找需要时间,会降低事务处理的速度,可设置只对特定内容开启
  • hostnameLookups off/on

3.使用ident协议来确定HTTP客户端用户名

2.2接收请求

从网络中读取一条HTTP请求报文

1.过程步骤

  • 解析请求行,查找请求方法、指定的资源标识符以及版本号
  • 读取以CRLF结尾的报文首部
  • 检测以CRLF结尾的、标识首部结束的空行
  • 读取请求主体

2.内部表示法

  • 用内部数据结构来储存请求报文

3.连接的输入、输出处理结构

  • 单线程web服务器
  • 多进程及多线程web服务器
  • 复用I/O的服务器
  • 复用的多线程Web服务器

2.3处理请求

对请求报文进行解释,并采取行动

  • GET\PUT\POST等

2.4访问资源

访问报文中指定的资源

1.文档根目录docroot
2.在配置文http.conf为Apache Web服务器设置文档的根目录:DocumentRoot /usr/local/httpd/files
3.虚拟托管的docroot

  • 同意台Web服务器上提供多个Web站点,每个站点在服务器上都有自己独有的文件根目录
  • 通过host首部,或者ip地址来区分不同的站点

4.用户的主目录 docroot

  • 提供私有web站点
  • 以斜杠/和波浪线~开始,后面跟这用户名的URI

5.web服务器可以提供静态资源和动态资源

  • 服务器端包含项、访问控制

2.5构建响应

创建带有正确首部的HTTP响应报文

1.响应报文
1.1描述响应MIME类型的content-Type首部

  • MIME类型
  • 魔法分类
  • 显示分类
  • 类型协商

1.2描述响应主图长度的content_length首部
1.3实际报文的主体内容

2.如果事务处理产生了响应实体,将内容放在响应报文中送过去

3.重定向

  • localtion响应首部包含了内容的新地址或者优选地址的URL
  • 301 Moved Permanently 资源移到了新的位置
  • 303 see other 资源被临时一走或者重命名了
  • 307 Temporary Redirect 重写嵌入式URL

2.6发送响应

将响应回送给客户端

1.持久连接

  • 要正确计算Content_length首部,不然客户端就无法知道响应什么时候结束

2.非持久连接

  • 服务器应该在发送完整条报文后,关闭自己这一端的连接

2.7记录事务处理过程

将与已完成事务有关的内容记录再一个日志文件中

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值