我是初学者,Web服务器是什么?谢谢!
通俗的讲,Web服务器传送(serves)页面使浏览器可以浏览,然而应用程序服务器提供的是客户端应用程序可以调用(call)的方法(methods)。确切一点,你可以说:Web服务器专门处理HTTP请求(request),但是应用程序服务器是通过很多协议来为应用程序提供(serves)商业逻辑(business logic)。
下面让我们来细细道来:
Web服务器(Web Server)
Web服务器可以解析(handles)HTTP协议。当Web服务器接收到一个HTTP请求(request),会返回一个HTTP响应(response),例如送回一个HTML页面。为了处理一个请求(request),Web服务器可以响应(response)一个静态页面或,进行页面跳转(redirect),或者把动态响应(dynamic response)的产生委托(delegate)给一些其它的程序例如CGI脚本,JSP(JavaServer Pages)脚本,servlets,ASP(Active Server Pages)脚本,服务器端(server-side)JavaScript,或者一些其它的服务器端(server-side)技术。无论它们(译者注:脚本)的目的如何,这些服务器端(server-side)的程序通常产生一个HTML的响应(response)来让浏览器可以浏览。
要知道,Web服务器的代理模型(delegation model)非常简单。当一个请求(request)被送到Web服务器里来时,它只单纯的把请求(request)传递给可以很好的处理请求(request)的程序(译者注:服务器端脚本)。Web服务器仅仅提供一个可以执行服务器端(server-side)程序和返回(程序所产生的)响应(response)的环境,而不会超出职能范围。服务器端(server-side)程序通常具有事务处理(transaction processing),数据库连接(database connectivity)和消息(messaging)等功能。
虽然Web服务器不支持事务处理或数据库连接池,但它可以配置(employ)各种策略(strategies)来实现容错性(fault tolerance)和可扩展性(scalability),例如负载平衡(load balancing),缓冲(caching)。集群特征(clustering—features)经常被误认为仅仅是应用程序服务器专有的特征。
应用程序服务器(The Application Server)
根据我们的定义,作为应用程序服务器,它通过各种协议,可以包括HTTP,把商业逻辑暴露给(expose)客户端应用程序。Web服务器主要是处理向浏览器发送HTML以供浏览,而应用程序服务器提供访问商业逻辑的途径以供客户端应用程序使用。应用程序使用此商业逻辑就象你调用对象的一个方法(或过程语言中的一个函数)一样。
应用程序服务器的客户端(包含有图形用户界面(GUI)的)可能会运行在一台PC、一个Web服务器或者甚至是其它的应用程序服务器上。在应用程序服务器与其客户端之间来回穿梭(traveling)的信息不仅仅局限于简单的显示标记。相反,这种信息就是程序逻辑(program logic)。 正是由于这种逻辑取得了(takes)数据和方法调用(calls)的形式而不是静态HTML,所以客户端才可以随心所欲的使用这种被暴露的商业逻辑。
在大多数情形下,应用程序服务器是通过组件(component)的应用程序接口(API)把商业逻辑暴露(expose)(给客户端应用程序)的,例如基于J2EE(Java 2 Platform, Enterprise Edition)应用程序服务器的EJB(Enterprise JavaBean)组件模型。此外,应用程序服务器可以管理自己的资源,例如看大门的工作(gate-keeping duties)包括安全(security),事务处理(transaction processing),资源池(resource pooling), 和消息(messaging)。就象Web服务器一样,应用程序服务器配置了多种可扩展(scalability)和容错(fault tolerance)技术。
1、可以通过电脑iptxt文件来填写首选DNS服务器地址。
2、电脑在正常上网的情况下,点击桌面右下角开始菜单,找到运行选项点击进去,输入cmd打开命令行窗口。在编辑框内输入ipconfig/all>d:iptxt就可以输出本机的IP到D盘根目录的iptxt文件了。
3、可以看到DNS首选和备选的地址。
4、由于每个区域地址不一样,以文件实际显示地址为主,然后根据此地址进行填写即可。
逻辑上实现了http协议、管理web资源、负责提供web服务器的管理功能。
Web服务器逻辑和操作系统共同管理TCP连接。
Apache 就是 开源的 软件web 服务器的一种。
一旦连接建立起来并被接受,服务器会将新连接添加到其现存的web服务器连接列表中,做好监视连接上数据传输的设备。
可以用反向DNS对大部分web服务器进行配置,以便将客户端IP地址转换成 客户端 主机名。
好处: web服务器可以将客户端主机名用于详细的访问控制和日志记录。
坏处:主机名查找可能会花费很长时间,要么只允许特定内容进行解析。
有些web服务器还支持ident 协议。服务器可以通过ident协议找到发起http连接的 用户名 。对记录日志非常有用。
类似这种。
如果客户端支持ident协议,就在tcp端口113上监听 ident请求。
但ident在公共因特网上不能很好的使用
解析请求报文时,web服务器会不定期从网络上接受输入数据。网络连接可能随时都会出现延迟。web服务器从网络中读取数据,将部分报文数据临时存储在内存中,直到收到足以进行解析的数据并理解其意义为止。
web服务器对报文解析后,并用自己内部的数据结构来存储请求报文。
请求可能会在任意时刻到达,所以web服务器不停观察有无新的web请求。不同的web服务器会以不同的方式为请求服务。
单线程的服务器一次只处理一个请求。一个事务处理结束后,才会去处理下一条连接。
结构容易实现,单性能很差。
多进程和多线程服务器用多个进程或更高效的现成同时对请求进行处理。
可以根据需要创建,或者预先创建一些线程/进程。有些服务器会为每条连接分配一个线程/进程,但当服务器同时要处理成百上千甚至上万的连接时,需要的继承或者线程数量可能会消耗太多内存或系统资源。(预先分配 线程池,进程池,内存池等手段)
因此这类服务器会对线程/进程的最大数量进行限制
线程与复用功能结合,利用计算机平台上多个CPU。多个线程中的每一个都在观察打开的连接。并对每条连接执行少量任务。
收到并解析请求后,可以根据方法、资源、首部和可选的主体部分对请求进行业务处理。
在web服务器将内容传送给客户端之前,要将请求 报文中的URI映射为web服务器上适当的内容或内容生成器,以识别出内容的源头。
请求URI 作为名字 来 访问 Web 服务器文件系统中的文件。通常web 服务器的文件系统中会有一个特殊的文件夹专门用于存放web内容。
即文档的 根目录 。
同时服务器也需要注意,不能让URL退到docroot之外,将文件系统的其余部分暴露出来。不允许这样的uri出现:
web服务器可以接受收对目录url的请求,其路径可以解析为一个目录。而不是文件。我们可以对大多数web服务器进行配置。使其在客户端请求目录url时 采取不同的动作。
大多数web服务器都会去查找目录中的一个名为indexhtml 的文件来替代此目录。
如果用户请求的时一个目录的url,并且这个目录中有一个名为indexhtml 的文件。服务器就会返回这个文件。
Web 服务器还可以将URI映射为动态资源,也就是说,映射到按需动态生成内容的程序上去。
实际上,有一大类名为应用程序服务器的Web 服务器会将Web服务器连接到复杂的后端应用上去。
Web 服务器主要做的事:
也就是说 web服务器会将URI路径名 映射为 可执行文件目录 。
服务器端包含项(SSI),如果某个资源被表示为存在服务器端包含想,服务器会在将其发送给客户端之前对资源内容进行处理。
web 服务器还可以为特定资源进行访问控制,有请求到达,要访问受控制资源时,服务器可以根据客户的ip地址进行访问控制,比如输入密码才能访问。
如果事务处理产生了响应 主体,就将内容放在响应报文中发回去。实体包括:
服务器要负责确定响应主体的MIME类型。有很多配置服务器的方法可以将MIME类型与资源关联起来。
Web 服务器有时会返回重定向响应而不是成功的报文。Web服务器可以将浏览器重定向到其他地方执行请求。
重定向返回码 3XX。Location响应首部包含了内容的新地址。
对于非持久连接而言,服务器应该发送了整条报文后,关闭自己一端。
对于持久而言,连接仍然可以保持打开状态。这种情况下服务器端要正确的计算content length,不然客户端无法知道响应何时结束。
当事务结束时,web服务器会在日志文件中添加一跳目录,来描述已执行的事务。
如何能让互联网上的用户也可以浏览到放在我们自己计算机上的主页?它的解决就要用到IIS。
IIS是一种Web(网页)服务组件,其中包括Web服务器、FTP服务器、NNTP服务器和SMTP服务器,分别用于网页浏览、文件传输、新闻服务和邮件发送等方面,它使得在网络(包括互联网和局域网)上发布信息成了一件很容易的事。
一、IIS的添加
请进入“控制面板”,依次选“添加/删除程序→添加/删除Windows组件”,将“Internet信息服务(IIS)”前的小钩去掉(如有),重新勾选中后按提示操作即可完成IIS组件的添加。用这种方法添加的IIS组件中将包括Web、FTP、NNTP和SMTP等全部四项服务。
二、IIS的运行
当IIS添加成功之后,再进入“开始→程序→管理工具→Internet服务管理器”以打开IIS管理器,对于有“已停止”字样的服务,均在其上单击右键,选“启动”来开启。
三、建立第一个Web站点
比如本机的IP地址为19216801,自己的网页放在D:\Wy目录下,网页的首页文件名为Indexhtm,现在想根据这些建立好自己的Web服务器。
对于此Web站点,我们可以用现有的“默认Web站点”来做相应的修改后,就可以轻松实现。请先在“默认Web站点”上单击右键,选“属性”,以进入名为“默认Web站点属性”设置界面。
1.修改绑定的IP地址:转到“Web站点”窗口,再在“IP地址”后的下拉菜单中选择所需用到的本机IP地址“19216801”。
2.修改主目录:转到“主目录”窗口,再在“本地路径”输入(或用“浏览”按钮选择)好自己网页所在的“D:\Wy”目录。
3.添加首页文件名:转到“文档”窗口,再按“添加”按钮,根据提示在“默认文档名”后输入自己网页的首页文件名“Indexhtm”。
4.添加虚拟目录:比如你的主目录在“D:\Wy”下,而你想输入“19216801/test”的格式就可调出“E:\All”中的网页文件,这里面的“test”就是虚拟目录。请在“默认Web站点”上单击右键,选“新建→虚拟目录”,依次在“别名”处输入“test”,在“目录”处输入“E:\All”后再按提示操作即可添加成功。
5.效果的测试:打开IE浏览器,在地址栏输入“19216801”之后再按回车键,此时就能够调出你自己网页的首页,则说明设置成功!
四、添加更多的Web站点
1.多个IP对应多个Web站点
如果本机已绑定了多个IP地址,想利用不同的IP地址得出不同的Web页面,则只需在“默认Web站点”处单击右键,选“新建→站点”,然后根据提示在“说明”处输入任意用于说明它的内容(比如为“我的第二个Web站点”)、在“输入Web站点使用的IP地址”的下拉菜单处选中需给它绑定的IP地址即可(如图1);当建立好此Web站点之后,再按上步的方法进行相应设置。
2.一个IP地址对应多个Web站点
当按上步的方法建立好所有的Web站点后,对于做虚拟主机,可以通过给各Web站点设不同的端口号来实现,比如给一个Web站点设为80,一个设为81,一个设为82……(如图2),则对于端口号是80的Web站点,访问格式仍然直接是IP地址就可以了,而对于绑定其他端口号的Web站点,访问时必须在IP地址后面加上相应的端口号,也即使用如“http://19216801:81”的格式。
很显然,改了端口号之后使用起来就麻烦些。如果你已在DNS服务器中将所有你需要的域名都已经映射到了此惟一的IP地址,则用设不同“主机头名”的方法,可以让你直接用域名来完成对不同Web站点的访问。
比如你本机只有一个IP地址为19216801,你已经建立(或设置)好了两个Web站点,一个是“默认Web站点”,一个是“我的第二个Web站点”,现在你想输入“wwwenanshancom”可直接访问前者,输入“wwwpopunetcom”可直接访问后者。其操作步骤如下:
1)请确保已先在DNS服务器中将你这两个域名都已映射到了那个IP地址上;并确保所有的Web站点的端口号均保持为80这个默认值。
2)再依次选“默认Web站点→右键→属性→Web站点”,单击“IP地址”右侧的“高级”按钮,在“此站点有多个标识下”双击已有的那个IP地址(或单击选中它后再按“编辑”按钮),然后在“主机头名”下输入“wwwenanshancom”再按“确定”(如图3)按钮保存退出。
3)接着按上步同样的方法为“我的第二个Web站点”设好新的主机头名为“wwwpopunetcom”即可。
4)最后,打开你的IE浏览器,在地址栏输入不同的网址,就可以调出不同Web站点的内容了。
3.多个域名对应同个Web站点
你只需先将某个IP地址绑定到Web站点上,再在DNS服务器中,将所需域名全部映射向你的这个IP地址上,则你在浏览器中输入任何一个域名,都会直接得到所设置好的那个网站的内容。
五、对IIS服务的远程管理
1.在“管理Web站点”上单击右键,选“属性”,再进入“Web站点”窗口,选择好“IP地址”。
2.转到“目录安全性”窗口,单击“IP地址及域名限制”下的“编辑”按钮,点选中“授权访问”以能接受客户端从本机之外的地方对IIS进行管理;最后单击“确定”按钮。
3.则在任意计算机的浏览器中输入如“http://19216801:3598”(3598为其端口号)的格式后,将会出现一个密码询问窗口,输入管理员帐号名(Administrator)和相应密码之后就可登录成功,现在就可以在浏览器中对IIS进行远程管理了!在这里可以管理的范围主要包括对Web站点和FTP站点进行的新建、修改、启动、停止和删除等操作。
使用路由器创建WEB服务器的方法
首先确定电脑与路由器正确连接,并且已连至互联网。在地址栏中输入你的路由器的地址(没改地址的话是19216811或19216801)回车,输入用户名密码,进入路由器主界面。
进入主界面后,选择转发规则(不同型号叫法可能不一样),然后选择虚拟服务器,
选择增加新的条目,如图所示
这时需要输入服务器端口和IP地址。这里的IP指的是电脑的IP,使用命令指示符ipconfig可以查看
记好IP,输入到刚才的IP里,端口映射设置如下:服务端口号填写80,如果填写为80-82则代表映射80、81、82端口
保存好你将看到,这就代表你成功了。到此路由器中的设置已经完成。我们再看看电脑中的设置。
本文以Windows中的IIS为例。具体的IIS安装和使用方法请自行搜索。
打开IIS,找到网站右击选择“编辑绑定”打开“网站绑定”窗口,“主机名”为空不填,IP地址写本地IP地址192168XXXXXX(填入刚才的IP)。
以上设置成功后,就可以访问了。事实上就是端口映射,这里就设置好了
Windows 2003的Web服务器配置方法介绍
Windows 2003的'Web服务器配置方法
日,笔者将学校服务器的操作系统升级为Windows Server 2003,在Web服务器的配置过程中发现了许多与Windows 2000 Server的不同之处。为了同行少走弯路,现将配置中应注意的问题简单总结如下:
Windows Server 2003 中Internet 信息服务(IIS) 升级为IIS 60,其安全性更高。默认情况下,Windows Server 2003没有安装IIS 60,要通过控制面板来安装。具体做法为:
1 进入“控制面板”。
2 双击“添加或删除程序”。
3 单击“添加/删除 Windows 组件”。
4 在“组件”列表框中,双击“应用程序服务器”。
5 双击“Internet 信息服务(IIS)”。
6 从中选择“万维网服务”及“文件传输协议(FTP)服务”。
7 双击“万维网服务”,从中选择“Active Server Pages” 及“万维网服务”等。
安装好IIS后,接着设置Web服务器,具体做法为:
1 在“开始”菜单中选择“管理工具→Internet信息服务(IIS)管理器”。
2 在“Internet 信息服务(IIS)管理器”中双击“本地计算机”。
3 右击“网站”,在dan出菜单中选择“新建→网站”,打开“网站创建向导”。
4 依次填写“网站描述”、“IP 地址”、“端口号”、“路径”和“网站访问权限”等。最后,为了便于访问还应设置默认文档(Indexasp、Indexhtm)。
上述设置和Windows 2000 Server网站设置基本相同,但此时Web服务还仅适用于静态内容,即静态页面能正常浏览,常用Active Server Pages(ASP)功能没有被启用。所以还应在“Internet 信息服务(IIS)管理器”的“ Web 服务扩展”中选择允许“Active Server Pages”。
另外,还应注意如果Web服务主目录所在分区是NTFS格式,而ASP网页有写入操作时(如用到新闻后台管理功能的),要注意设置写入及修改权限。 ;
0条评论