10.2 web服务器

发布时间 2023-08-05 15:18:08作者: C~A

Web客户端和服务器之间的交互用的是一个基于文本的应用级协议,叫做HTTP(Hypertext Transfer Protocol,超文本传输协议)。HTTP是一个简单的协议。一个Web客户端(即浏览器)打开一个到服务器的因特网连接,并且请求某些内容。服务器响应所请求的内容,然后关闭连接。浏览器读取这些内容,并把它显示在屏幕上。

Web服务器以两种不同的方式向客户端提供内容:

取一个磁盘文件,并将它的内容返回给客户端。磁盘文件称为静态内容(static con-tent),而返回文件给客户端的过程称为服务静态内容(serving static content)。

运行一个可执行文件,并将它的输出返回给客户端。运行时可执行文件产生的输出称为动态内容(dynamic content),而运行程序并返回它的输出到客户端的过程称为服务动态内容(serving dynamic content)。

每条由Web服务器返回的内容都是和它管理的某个文件相关联的。这些文件中的每一个都有一个唯一的名字,叫做URL(Universal Resource Locator,通用资源定位符)。例如,URL

http://www.google.com:80/index.html

表示因特网主机www.google.com上一个称为/index.html的HTML文件,它是由一个监听端口80的Web服务器管理的。端口号是可选的,默认为知名的HTTP端口80。可执行文件的URL可以在文件名后包括程序参数。“?”字符分隔文件名和参数,而且每个参数都用“&”字符分隔开。例如,URL

http://bluefish.ics.cs.cmu.edu:8000/cgi-bin/adder?150008213

标识了一个叫做/cgi-bin/adder的可执行文件,会带两个参数字符串15000和213来调用它。在事务过程中,客户端和服务器使用的是URL的不同部分。