美文网首页
web服务器

web服务器

作者: 全汪汪 | 来源:发表于2018-12-06 11:38 被阅读0次

web服务器工作过程

1.建立连接
2.接收请求
3.处理请求
4.访问资源
5.构建响应
6.发送响应
7.记录日记

建立连接

客户端请求连接的时候,服务器可根据一定规则进行拒绝等操作,也可以根据客户度那连接的ip进行反向dns解析或ident请求获取客户端用户名,不过因为反向dns消耗时间较多,ident请求也因为有各种问题,所以一般没必要的话是不会获取客户端的用户名。

接受&处理请求

通过请求首部解析字段名,并且自己维护一张列表,将解析的结果以key-value的形式存入其中,直至解析完成并足以理解其意义为止。

事务处理结构

不同结构的web服务器处理事务的方法和效率也不一样。
单线程web服务器:单事务处理,处理完一个再继续处理下一个,但万一事务一多,处理速度过慢就会严重影响效率
多进程/多线程web服务器:一般会为每个事务建一个进程或线程,但事务一多,就容易造成大量的线程或进程建立,严重消耗服务器资源。
复用i/o服务器:监听所有的连接,监听时不会为连接分配进程线程资源,只有当连接发生变化才会进行资源分配并处理。
复用的多线程服务器:上述两种的结合。

资源访问

客户端通过uri来访问特定服务器特定目录的某个资源文件,但万一uri没有指定特定的目录和文件呢。这时候就要全靠docroot的位置指定的,也就是俗称的root。配置了root地址的,在默认情况下就会返回root指定地址的文件。

虚拟托管的docroot

理论上来说,一个服务器只有一个root。但是我们一个服务器可以配置多个站点,看起来就像是访问不同服务器一样(实际同一个服务器)。因此我们可以为多个站点配置不同的docroot目录,这就是我们所说的虚拟托管docroot。

私有用户docroot

万一用户想访问自己私有用户的目录文件呢,当然也可以配置。通常以/~开始,后面跟着用户名的uri。

目录列表

除了上述默认docroot的配置,还可以配置成返回一个错误,返回一个HTML文件,里面包含每个文件的名字和文件的大小以及修改日期。当然一般不这么配置,这样暴露的信息太多了..

构建响应

构建响应的时候要确认MIME类型,好让客户端根据其进行解析。确认MIME类型一般有三个方法:
魔法类型:维护一个列表,对列表中进行匹配。速度虽然比较慢,但是很方便在文件没有标准扩展名的时候。
显示分类:不管那么多,强制特定文件或目录内容拥有某个MIME类型。
类型协商:与客户端讨论哪种MIME类型比较好。

重定向

服务器在某些情况下向客户端说明资源需要重新定位。

相关文章

  • <HTTP权威指南>读书笔记 ---- Web服

    Web服务器 Web服务器的实现 Web服务器会对HTTP请求进行处理并提供响应。术语"Web服务器"可以用来表示...

  • 《HTTP权威指南》学习笔记

    Web及HTTP基础 Web客户端和服务器Web 内容都是存储在 Web 服务器上的。 Web 服务器所使用的是 ...

  • php中的数据库

    Xampp分为数据库服务器与web服务。web服务分为静态web服务器与动态web服务器访问用:localhost...

  • Tomcat知识小结

    一 web 1 服务器: 硬件服务器 软件服务器 2 web服务器: 提供资源供别人访问 3 web: 网页的意思...

  • Web框架与Web服务器

    1. Web框架与服务器区别 ​ web服务器:典型Web服务器Apache、Nginx、Tomcat,作用是接...

  • WSGI

    简介 Web服务器网关接口(WSGI)是用于Python编程语言的Web服务器(Web Server)和Web应用...

  • node web模块 (服务器端和客户端)

    node web模块 web服务器 web服务器指网站服务器,指驻留在因特网上的某种程序,web浏览器的基本功能,...

  • Flask+uWSGI+Nginx模型

    Web服务器层 Web服务器主要是接收 HTTP 请求并返回响应。常见的 web服务器有 Nginx,Apache...

  • 常见的web服务器有哪些?

    WEB服务器也可以称为网站服务器,可以用来放置网站文件,供用户浏览。那么常见的WEB服务器有哪些呢? web服务器...

  • 网站的基本概念

    服务器 web服务器,提供web服务(网站访问),就需要安装 web服务软件 apche tomcat iis ...

网友评论

      本文标题:web服务器

      本文链接:https://www.haomeiwen.com/subject/jjpncqtx.html