Step2:浏览器与服务器建立TCP连接;
Step3:浏览器将用户的事件按照HTTP协议要求的格式打包成数据包,这个过程的本质就是在待发送缓冲区中有这一段HTTP协议格式的字节流;
Step4:浏览器确认服务器可写,将该数据包推入Internet中,最终,该包被递交到服务端;
Step5:服务器在接收到该数据包后,以同样的格式进行解析,获取客户端的意图;
Step6:在获取了客户端的意图之后,服务器进行分类处理,或是提供某一文件,或是处理相关数据;
Step7:将处理结果装入缓冲区,或者文档,或是其他内容;
Step8:服务器将按照HTTP协议格式,将Step7中的数据进行打包;
Step9:服务器确定对端可写,将数据包推入Internet,该包经过网络处理,最终返回至客户端;
Step10:客户端拿到包之后,以HTTP协议格式进行解包,然后解析数据;
Step11:客户端处理相关数据,并且展示在页面之上。
以上这11步,就是web服务器最基本的工作原理。通过梳理,我们不难发现,这就是一个简单的网络通信过程。换句话说,就是一个简单的发送数据、接受数据、处理数据的过程。更高级的web服务器,无非也就是将上述的三个基础内容划分得更加详细一点而已。
Internet大家已经不在陌生,现在已经迈进了广大工薪阶层的家庭。越来越多的公司也纷纷将自己的内部网络接入了Internet。当然接入Internet的方式有很多,对于普通老百姓来说,就是买一个MODEM利用PSTN(公众服务电话网络)接入Internet。而一些公司一般是利用DDN或ISDN接入,利用租月的方式。当然了个人不可能承担起租月的费用,那么如何利用一条电话线使多人上网呢?这就牵扯到了Proxy Server(代理服务器)以及如何使用代理服务器的问题。Proxy是什么呢,是代理。普通的因特网访问是一个典型的客户机与服务器结构:用户利用计算机上的客户端程序,如浏览器发出请求,远端WWW服务器程序响应请求并提供相应的数据。而Proxy处于客户机与服务器之间,对于服务器来说,Proxy是客户机,Proxy提出请求,服务器响应;对于客户机来说,Proxy是服务器,它接受客户机的请求,并将服务器上传来的数据转给客户机。它的作用很象现实生活中的代理服务商。因此Proxy Server的中文名称就是代理服务器。
Proxy Server的工作原理是:当客户在浏览器中设置好Proxy Server后,你使用浏览器访问所有WWW站点的请求都不会直接发给目的主机,而是先发给代理服务器,代理服务器接受了客户的请求以后,由代理服务器向目的主机发出请求,并接受目的主机的数据,存于代理服务器的硬盘中,然后再由代理服务器将客户要求的数据发给客户。
代理服务器的作用有四个:
一、提高访问速度。因为客户要求的数据存于代理服务器的硬盘中,因此下次这个客户或其它客户再要求相同目的站点的数据时,就会直接从代理服务器的硬盘中读取,代理服务器起到了缓存的作用,对热门站点有很多客户访问时,代理服务器的优势更为明显。
二、Proxy可以起到防火墙的作用。因为所有使用代理服务器的用户都必须通过代理服务器访问远程站点,因此在代理服务器上就可以设置相应的限制,以过滤或屏蔽掉某些信息。这是局域网网管对局域网用户访问范围限制最常用的办法,也是局域网用户为什么不能浏览某些网站的原因。拨号用户如果使用代理服务器,同样必须服从代理服务器的访问限制,除非你不使用这个代理服务器。
三、通过代理服务器访问一些不能直接访问的网站。互联网上有许多开放的代理服务器,客户在访问权限受到限制时,而这些代理服务器的访问权限是不受限制的,刚好代理服务器在客户的访问范围之内,那么客户通过代理服务器访问目标网站就成为可能。国内的高校多使用教育网,不能出国,但通过代理服务器,就能实现访问因特网,这就是高校内代理服务器热的原因所在。
四、安全性得到提高。无论是上聊天室还是浏览网站,目的网站只能知道你来自于代理服务器,而你的真实IP就无法测知,这就使得使用者的安全性得以提高。
代理服务器的设置:
要设置代理服务器,必须先知道代理服务器地址和端口号,然后在IE或NC的代理服务器设置栏中填入相应地址和端口号就可以了。假设我们有一个代理服务器的地址是Proxy.net.net,端口号是3000,在IE中的配置方法是使用查看菜单的Internet选项/连接/代理服务器,然后在通过代理服务器访问Internet选项前面的复选框中打上钩,在地址框中填入代理服务器地址,如本例中假设代理服务器地址是proxy.net.net,再在端口框中填上端口号3000,点一下最下方的应用按钮,再点确定,设置完成。下次再使用IE时用户就会发现,无论你浏览什么网站,IE总是先与代理服务器连接。用NC的话,设置稍繁一点。使用edit菜单下的Preferences菜单项,再选择Advanced下的Proxies,此时在右侧Proxies选项中选择第二项Manral Proxy configuration,再点其右边的View…按钮,就会出现代理服务器的配置界面,在代理服务器地址和端口号栏中填入相应的内容,点击OK,退回到参数设置窗口,再点击OK,代理服务器的设置工作就完成了。当客户再次浏览网页时,就会自动向你设定的代理服务器发出申请,并得到数据,在浏览网站时,无论是IE或是NC都可以在浏览器状态栏中清楚地看到先连代理服务器,再连目标网站的过程。
但是,千万不要把Proxy Server和Router搞混了,Proxy Server是建立在应用层上的服务软件,而Router则是一台网络设备或一台电脑,它是工作在IP层的,数据到达IP层后就进行转发。一般一个Proxy Server工作在一台既具有MODEM和网卡的计算机上的。不同的Proxy Server软件提供的服务不同,一般都提供WWW,FTP等常用的服务。在内部网中每台客机都必须具有一个独立的IP地址,且在客机的"控制面板-Internet 项"中"连接"中配置使用Proxy Server且指向Proxy Server IP地址和服务的端口号。当Proxy Server启动时,将利用Winsock.dll开辟一个指定的服务端口,等待客机的的请求。当Proxy Server的MODEM拨号上网后,你的Proxy Server就可以工作了。当你在你的IE发出一连接请求时,你的客机就直接将数据包发到Proxy Server,当服务器捕获这个IP包时,首先要分析它是什么请求,如果是HTTP请求,Proxy Server就向你的ISP发出HTTP请求,当Proxy Server收到回应时,就将此IP包转发到内部网络上,你的客机就会获得此IP包。另外你的Proxy Server还可以做为一个很好的防火墙。具体操作,请参考你的Proxy Server的readme文件。
在您访问因特网的Web服务器时,您可知道会有多少个人信息泄漏给别人?在上网访问的过程中,Web浏览器至少会把20多项有关您个人的信息在您毫无觉察的情况下悄悄地送往Web服务器上。 这些个人信息如果是被传送到知名网站或是大型企业的Web服务器上,还不会有什么大问题。若是被传送到连是谁开设的网站都不清楚的Web服务器上,则会令人深感不安。Web浏览器传送给Web服务器的信息,用行话来说就是"环境变量"。其主要内容为:(1)分配给电脑的IP地址(REMOTE_A DDR)和主机名(REMOTE_HOST);(2)Web浏览器所使用的端口序号(REMOTE_PORT);(3)Web浏览器的产品名(HTTP_USER_AGENT);(4)所浏览过的网站中最新一个的网页地址(HTTP_REFERER)等。
上述各项虽然不包含电子邮件地址及姓名等的个人信息,但(1)中的IP地址和主机名在安全性方面委实令人难以放心,可是采取什么样的方法才可以遮掩自己的IP地址呢?
解决这个问题其实很简单。只要通过代理服务器(proxy server)访问Web服务器即可。代理服务器的作用在于它可替Web服务器承受来自各个终端的访问请求。在企业网方面,代理服务器被设置在公司内部的LAN与因特网相互链接的部分上。拔号上网时,可使用因特网接驳商提供的代理服务器即可。
当我们想浏览一个网站的时候,只要在浏览器的地址栏里输入网站的地址就可以了,例如:www.microsoft.com,但是在浏览器的地址栏里面出现的却是: http://www.microsoft.com,你知道为什么会多出一个“http”吗? 一、HTTP协议是什么 我们在浏览器的地址栏里输入的网站地址叫做URL(UniformResourceLocator,统一资源定位符)。就像每家每户都有一个门牌地址一样,每个网页也都有一个Internet地址。当你在浏览器的地址框中输入一个URL或是单击一个超级链接时,URL就确定了要浏览的地址。浏览器通过超文本传输协议(HTTP),将Web服务器上站点的网页代码提取出来,并翻译成漂亮的网页。因此,在我们认识HTTP之前,有必要先弄清楚URL的组成,例如: http://www.microsoft.com/china/index.htm。它的含义如下: 1. http://:代表超文本传输协议,通知microsoft.com服务器显示Web页,通常不用输入; 2.www:代表一个Web(万维网)服务器; 3.Microsoft.com/:这是装有网页的服务器的域名,或站点服务器的名称; 4.China/:为该服务器上的子目录,就好像我们的文件夹; 5.Index.htm:index.htm是文件夹中的一个HTML文件(网页)。 我们知道,Internet的基本协议是TCP/IP协议,然而在TCP/IP模型最上层的是应用层(Applicationlayer),它包含所有高层的协议。高层协议有:文件传输协议FTP、电子邮件传输协议SMTP、域名系统服务DNS、网络新闻传输协议NNTP和HTTP协议等。 HTTP协议(HypertextTransferProtocol,超文本传输协议)是用于从WWW服务器传输超文本到本地浏览器的传送协议。它可以使浏览器更加高效,使网络传输减少。它不仅保证计算机正确快速地传输超文本文档,还确定传输文档中的哪一部分,以及哪部分内容首先显示(如文本先于图形)等。这就是你为什么在浏览器中看到的网页地址都是以“ http://”开头的原因。 自WWW诞生以来,一个多姿多彩的资讯和虚拟的世界便出现在我们眼前,可是我们怎么能够更加容易地找到我们需要的资讯呢?当决定使用超文本作为WWW文档的标准格式后,于是在1990年,科学家们立即制定了能够快速查找这些超文本文档的协议,即HTTP协议。经过几年的使用与发展,得到不断的完善和扩展,目前在WWW中使用的是HTTP/1.0的第六版。 二、HTTP是怎样工作的 既然我们明白了URL的构成,那么HTTP是怎么工作呢?我们接下来就要讨论这个问题。 由于HTTP协议是基于请求/响应范式的(相当于客户机/服务器)。一个客户机与服务器建立连接后,发送一个请求给服务器,请求方式的格式为:统一资源标识符(URL)、协议版本号,后边是MIME信息包括请求修饰符、客户机信息和可能的内容。服务器接到请求后,给予相应的响应信息,其格式为一个状态行,包括信息的协议版本号、一个成功或错误的代码,后边是MIME信息包括服务器信息、实体信息和可能的内容。 许多HTTP通讯是由一个用户代理初始化的并且包括一个申请在源服务器上资源的请求。最简单的情况可能是在用户代理和服务器之间通过一个单独的连接来完成。在Internet上,HTTP通讯通常发生在TCP/IP连接之上。缺省端口是TCP80,但其它的端口也是可用的。但这并不预示着HTTP协议在Internet或其它网络的其它协议之上才能完成。HTTP只预示着一个可靠的传输。 这个过程就好像我们打电话订货一样,我们可以打电话给商家,告诉他我们需要什么规格的商品,然后商家再告诉我们什么商品有货,什么商品缺货。这些,我们是通过电话线用电话联系(HTTP是通过TCP/IP),当然我们也可以通过传真,只要商家那边也有传真。 以上简要介绍了HTTP协议的宏观运作方式,下面介绍一下HTTP协议的内部操作过程。 在WWW中,“客户”与“服务器”是一个相对的概念,只存在于一个特定的连接欢迎分享,转载请注明来源:夏雨云
评论列表(0条)