一个简单Web服务器(试验)

一个简单Web服务器(试验)

ID:39633543

大小:1.07 MB

页数:93页

时间:2019-07-07

一个简单Web服务器(试验)_第1页
一个简单Web服务器(试验)_第2页
一个简单Web服务器(试验)_第3页
一个简单Web服务器(试验)_第4页
一个简单Web服务器(试验)_第5页
资源描述:

《一个简单Web服务器(试验)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第18章一个简单Web服务器的例子SHTTPD一个简单Web服务器的例子SHTTPD本章将实现一个简单的Web服务器程序——SimpleHTTPDemo,简称SHTTPD。这个Web服务器可以实现简单的用户配置、静态网页响应等功能。按照如下步骤进行设计和编写程序:q定义需求,明确需求定义。q对需求进行分析,明确实现的方式和关键的问题,进行模块设计。q按照模块设计,进行编码。q最后进行编译和测试。18.1SHTTPD的需求分析Web服务器SHTTPD可以实现动态配置、多客户访问、CGI支持、支持HTTP/1.0版本,最终能实现简单的可用型Web服务器,多种浏览器可以

2、正常访问SHTTPD上的网页,如图18.1所示。本节对SHTTPD的功能进行说明。·101·第18章一个简单Web服务器的例子SHTTPD图18.1多浏览器访问支持18.1.1SHTTPD启动参数可动态配置的需求服务器dHTTP可以动态配置启动参数,例如服务器的侦听端口、支持客户端并发访问的数量、超时时间的设置、访问Web网页的路径等。采用参数配置和文件配置两种支持方式,在优先级上,参数配置比文件配置的优先级高,参数配置的选项值会覆盖文件配置的选项。1.命令行参数配置命令行配置的命令格式如下:SHTTPD–-ListenPortnumber–-MaxClientn

3、umber–DocumentRootpath–CGIRootpath–DefaultFilefilename–TimeOutseconds–ConfigFilefilename配置选项的含义如下:·101·第18章一个简单Web服务器的例子SHTTPDq--ListenPortnumber:配置侦听端口,ListenPort为关键字,number为服务器的侦听端口。例如,如下命令使SHTTPD在8888端口侦听。默认设置为8080。debain#SHTTPD–ListenPort8888q--MaxClientnumber:最大支持客户端数量,MaxClient为

4、关键字,number为客户端的数量,默认设置为4。q–DocumentRootpath:服务器搜寻Web网页的根目录,DocumentRoot为关键字,path为路径名称,必须设置为全路径,权限与运行SHTTPD的用户权限相同。默认路径为/usr/local/var/www。q–CGIRootpath:服务器查找CGI程序的位置,以此作为根目录。CGIRoot为关键字,path为路径,必须为全路径。默认路径为/usr/local/var/www/cgi-bin。q–DefaultFilefilename:当用户没有指定目录下的文件名时,默认发送给客户端的文件。De

5、faultFile为关键字,filename为设置的文件名,默认为index.html。q–TimeOutseconds:客户端使用HTTP/1.1协议访问的时候,客户端长时间没有访问服务器时,服务器断开连接的超时时间。TimeOut为关键字,seconds为客户端上次访问的最长间隔,超过这个时间服务器自动断开此连接。默认值为3秒。·101·第18章一个简单Web服务器的例子SHTTPDq--ConfigFilefilename:指定Web服务器SHTTPD的配置文件。ConfigFile为关键字,filename为配置文件的路径,包含配置文件的文件名。默认配置时

6、配置文件为/etc/SHTTPD.conf。2.文件配置配置文件的名称为SHTTPD.conf,默认路径为“/etc”下。配置文件的格式如下:[#注释

7、[空格]关键字[空格]=[空格]value]配置文件中的一行为#开头的注释或者选项配置,不支持空行,关键字右边的值不能含有空格。各部分如下定义:#注释:一行以#开始表示此行为注释,程序不对此行进行分析。空格:可以为0个或者多个空格。关键字:可以为如下的字符串,大小写必须完全匹配。qListenPort:侦听端口。qMaxClient:最大客户端并行访问数。qDocumentRoot:Web网页根目录。qCGIRoo

8、t:CGI程序根目录。qDefaultFile:默认访问网页名称。qTimeOut:客户端连接空闲超时时间。值:用户对关键字选项的配置,全部为字符串。值中不能有引号、换行符、空格(末尾的空格将被解释为值的一部分),ListenPort、TimeOut等不支持16进制的“0x”方式。下面为配置文件实例。#SHTTPDWeb服务器配置文件示例·101·第18章一个简单Web服务器的例子SHTTPD#侦听端口ListenPort=80#最大并发访问客户端数目MaxClient=8#Web网页根目录DocumentRoot=/home/www/#CGI根目录CGIRoot

9、=/hom

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。