web服务器的配置与简单动态网页设计实验,一个简单Web服务器(试验).doc

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

一个简单Web服务器的例子SHTTPD

本章将实现一个简单的Web服务器程序——SimpleHTTPDemo,简称SHTTPD。这个Web服务器可以实现简单的用户配置、静态网页响应等功能。按照如下步骤进行设计和编写程序:

定义需求,明确需求定义。

对需求进行分析,明确实现的方式和关键的问题,进行模块设计。

按照模块设计,进行编码。

最后进行编译和测试。

18.1 SHTTPD的需求分析

Web服务器SHTTPD可以实现动态配置、多客户访问、CGI支持、支持HTTP/1.0版本,最终能实现简单的可用型Web服务器,多种浏览器可以正常访问SHTTPD上的网页,如图18.1所示。本节对SHTTPD的功能进行说明。

图18.1 多浏览器访问支持

18.1.1 SHTTPD启动参数可动态配置的需求

服务器dHTTP可以动态配置启动参数,例如服务器的侦听端口、支持客户端并发访问的数量、超时时间的设置、访问Web网页的路径等。采用参数配置和文件配置两种支持方式,在优先级上,参数配置比文件配置的优先级高,参数配置的选项值会覆盖文件配置的选项。

1.命令行参数配置

命令行配置的命令格式如下:

SHTTPD –-ListenPort number –-MaxClient number –DocumentRoot path –CGIRoot path –DefaultFile filename –TimeOut seconds –ConfigFile filename

配置选项的含义如下:

--ListenPort number:配置侦听端口,ListenPort为关键字,number为服务器的侦听端口。例如,如下命令使SHTTPD在8888端口侦听。默认设置为8080。

debain#SHTTPD –ListenPort 8888

--MaxClient number:最大支持客户端数量,MaxClient为关键字,number为客户端的数量,默认设置为4。

–DocumentRoot path:服务器搜寻Web网页的根目录,DocumentRoot为关键字,path为路径名称,必须设置为全路径,权限与运行SHTTPD的用户权限相同。默认路径为/usr/local/var/www。

–CGIRoot path:服务器查找CGI程序的位置,以此作为根目录。CGIRoot为关键字,path为路径,必须为全路径。默认路径为/usr/local/var/www/cgi-bin。

–DefaultFile filename:当用户没有指定目录下的文件名时,默认发送给客户端的文件。DefaultFile为关键字,filename为设置的文件名,默认为index.html。

–TimeOut seconds:客户端使用HTTP/1.1协议访问的时候,客户端长时间没有访问服务器时,服务器断开连接的超时时间。TimeOut为关键字,seconds为客户端上次访问的最长间隔,超过这个时间服务器自动断开此连接。默认值为3秒。

--ConfigFile filename:指定Web服务器SHTTPD的配置文件。ConfigFile为关键字,filename为配置文件的路径,包含配置文件的文件名。默认配置时配置文件为/etc/SHTTPD.conf。

2.文件配置

配置文件的名称为SHTTPD.conf,默认路径为“/etc”下。配置文件的格式如下:

[#注释|[空格]关键字[空格]=[空格]value]

配置文件中的一行为#开头的注释或者选项配置,不支持空行,关键字右边的值不能含有空格。各部分如下定义:

#注释:一行以#开始表示此行为注释,程序不对此行进行分析。

空格:可以为0个或者多个空格。

关键字:可以为如下的字符串,大小写必须完全匹配。

ListenPort:侦听端口。

MaxClient:最大客户端并行访问数。

DocumentRoot:Web网页根目录。

CGIRoot:CGI程序根目录。

DefaultFile:默认访问网页名称。

TimeOut:客户端连接空闲超时时间。

值:用户对关键字选项的配置,全部为字符串。值中不能有引号、换行符、空格(末尾的空格将被解释为值的一部分),ListenPort、TimeOut等不支持16进制的“0x”方式。下面为配置文件实例。

#SHTTPD Web服务器配置文件示例

#侦听端口

ListenPort = 80

#最大并发访问客户端数目

MaxClient = 8

#Web网页根目录

DocumentRoot = /home/www/

#CGI根目录

CGIRoot = /home/www/cgi-bin/

#默认访问文件名

DefaultFile = def

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值