28、深入理解计算机系统笔记,Web服务器简介
2011-07-09 11:01
483 查看
1、Web服务器以两种不同的方式向客户端提供内容:
1)静态内容(static content):从服务器磁盘取得文件并把它返回客户端来服务。
2)动态内容(dynamic content):运行一个可执行文件,并把它的输出返回给客户端。在服务器上一个子进程的上下文中运行一个程序并将它的输出返回给客户端来服务。
2、在URL中,“?”用来分隔文件名和参数,多个参数用“&”来分隔。参数中不允许空格,用“%20”来表示。
3、确定一个URL指向的是静态内容还是动态内容没有标准的规则。一种常见的方法是,确认一组目录,如cgi-bin,所有的可执行性文件都放在这这些目录中。
https://mail.qq.com/cgi-bin/frame_html?sid=dKCN-6tpo1JFKQhG&r=bcdb4ca744f9b60c166829ecc4cf6a8a
1)如,最后一个“/”不是unix的根目录,而表示被请求内容类型的主目录。
2)最小的URL后辍是“/”字符,所有的服务器将其扩展为某个默认的主面。
4、HTTP事务
1)HTTP请求
执行的格式是:<method> <uri> <version>
如:GET / HTTP/1.1
2)HTTP响应
执行格式:<version> <status code> <status message>
如:HTTP/1.0 200 OK
3)通过CGI(common gateway interface),来解决客户端与服务器交互问题,如客户端如何将参数传给服务器,服务器如何将这些参数传给它所创建的子进程?服务器如何将子进程生成内容所需要的其他信息传递给子进程?等。
5、书中设计了一个小型的web服务器。
1)静态内容(static content):从服务器磁盘取得文件并把它返回客户端来服务。
2)动态内容(dynamic content):运行一个可执行文件,并把它的输出返回给客户端。在服务器上一个子进程的上下文中运行一个程序并将它的输出返回给客户端来服务。
2、在URL中,“?”用来分隔文件名和参数,多个参数用“&”来分隔。参数中不允许空格,用“%20”来表示。
3、确定一个URL指向的是静态内容还是动态内容没有标准的规则。一种常见的方法是,确认一组目录,如cgi-bin,所有的可执行性文件都放在这这些目录中。
https://mail.qq.com/cgi-bin/frame_html?sid=dKCN-6tpo1JFKQhG&r=bcdb4ca744f9b60c166829ecc4cf6a8a
1)如,最后一个“/”不是unix的根目录,而表示被请求内容类型的主目录。
2)最小的URL后辍是“/”字符,所有的服务器将其扩展为某个默认的主面。
4、HTTP事务
1)HTTP请求
执行的格式是:<method> <uri> <version>
如:GET / HTTP/1.1
2)HTTP响应
执行格式:<version> <status code> <status message>
如:HTTP/1.0 200 OK
3)通过CGI(common gateway interface),来解决客户端与服务器交互问题,如客户端如何将参数传给服务器,服务器如何将这些参数传给它所创建的子进程?服务器如何将子进程生成内容所需要的其他信息传递给子进程?等。
5、书中设计了一个小型的web服务器。
相关文章推荐
- 【深入理解计算机系统】TINY Web 服务器的搭建
- 深入理解计算机系统学习笔记(一)之此书简介
- 14、深入理解计算机系统笔记:异常控制流
- 深入理解计算机系统 chapter 9 学习笔记
- 深入理解计算机系统的阅读笔记
- 深入理解计算机系统之笔记
- *13、深入理解计算机系统笔记:程序链接(2)
- 深入理解计算机系统学习笔记(三)之C语言常见的与存储器(内存)有关的错误
- 7、深入理解计算机系统笔记:存储器层次结构,存储技术(2)
- 3、深入理解计算机系统笔记:程序的机器级表示
- 深入理解计算机系统 笔记(二)
- 15、深入理解计算机系统笔记:进程控制
- 16、深入理解计算机系统笔记:信号
- 18、深入理解计算机系统笔记:测量程序执行时间
- 深入理解计算机系统 笔记(一)
- 深入理解计算机系统(第一章学习笔记)
- 19、深入理解计算机系统笔记,虚拟存储器,基本原理(1)
- 31、深入理解计算机系统笔记,并发编程(concurrent)(3)
- 24、深入理解计算机系统笔记,虚拟存储器,动态存储器分配
- 2、深入理解计算机系统笔记:信息表示