❶ 简要介绍Web服务器的原理,以及端口号、HTTP、HTML、ASP等概念。
web服务器的原理就是解析你的web应用程序,然后输出页面给浏览器,就是把你的脚本语言翻译为用户可以看得懂浏览器上所能看到的东西。如果说网址(ip)是一个家,那么端口就好像是这个家的每个不同的房间,端口不同,访问的页面也不同。http是超文本传输协议的英文简写,就是网络间传输数据的一种协议。html是一种网页的语言,是学习网页制作最基本的东西,asp的中文全称为动态服务页面,他是微软开发的一种脚本语言,了解他,就要先了解vb,vbscript的各种对象的使用和属性,不管是那种动态语言,最重要的都是和数据库打交道。asp也不例外,你可以用它来任意添加,删除,修改数据,可以利用它来制作网页留言板,论坛,聊天室等“动态的东西”
❷ 试述WEB服务的工作原理
Web服务的工作原理是各公司从注册表(ebXML或UDDI的注册表)获得发布信息,建立满足要求的执行过程,然后向注册表发布它们的服务。以后,其他公司发现注册表中列出的一项服务,同意已制定的标准,然后开展业务。一旦在标准上取得一致并且约定的规则得到满足,应用程序就可以接管交易处理,因而从开展业务的开销中去除了人工互动。在这种模型中,通过利用现有基础设施,应用可以交换有关公司希望提供和消费的服务的信息。此外,应用还可以查询注册表,查找可以以更优惠条件提供同样服务的其他应用(公司)。
在标准方面,UDDI作为一种用于Web的黄页被编制出来,它可以通过WSDL访问。WSDL支持类似于UDDI特性的ebXML注册特性。除了与UDDI的数据库特性竞争外,ebXML的Web服务部分曾被考虑与SOAP标准进行竞争。幸运的是,OASIS已将SOAP集成到ebXML中。目前,这些协议既相互重叠(UDDI和ebXML)又相互补充(SOAP和ebXML)。
·UDDI(通用描述、发现和集成):UDDI是Microsoft、IBM和Ariba为制定一项用于描述、注册和发现Web服务的Internet标准而成立的联盟。由此而来的UDDI框架是“一个企业可以注册其Web服务并查找其他Web服务的数据库集合。”应用程序使用SOAP
API来读取或提供与UDDI相关的WSDL文档。
·WSDL(Web服务描述语言):WSDL文件,即UDDI和ebXML注册表的子集合,提供联系信息、Web服务的描述、它们的位置以及如何调用它们的规范。UDDI注册表按行业类别和地理位置细分。WSDL文件常常由另外的信息源(如,COM
IDL或CORBA文件或EJB类定义)生成。WSDL用于描述通过Internet(或其他网络)可访问的程序以及同这些程序进行交流的信息格式和协议。它可以使Web服务的功能通过标准的方式展示出来,从而使Web服务和开发工具更易兼容。
·SOAP(简单对象访问协议):SOAP是使用XML通过Internet发送信息和访问动态Web服务的友好界面。其主要作用在于确保信息通过互联网在业务应用之间传输的可靠性。作为一种用在分布式环境中交换结构化数据的协议,它包括三个部分:信封、报头(可选)和协议消息体。信封标记SOAP消息的开始与结束。它还可以规定在网络上数据的编码规则。SOAP报头可以包含发送给一个地址或多个地址的邮件、一个支付代码或有关RPC类型互动的信息。一个信封中可以有多个报头或完全没有报头。SOAP消息体传送自描述结构或RPC类型接口格式的数据。
·ebXML(电子业务XML):ebXML标准是由OASIS和UN/CEFACT为帮助使XML成为开展电子数据交易的世界性语言。ebXML架构以业务过程和信息模型开始,将这个模型映射到XML文件并定义处理这些文件以及在交易伙伴之间交换这些文件的应用程序的要求。同UDDI注册表一样,ebXML注册表以标准的文档格式列出一家公司的能力的清单,使企业可以通过这个注册表找到其他企业、定义协议以及交换帮助开展商务交易的XML消息。ebXML的目标是使所有这些事务可以在Internet上被自动执行,无需人工干预。
❸ WEB浏览器的工作原理
WWW 的工作基于客户机/服务器计算模型,由Web 浏览器(客户机)和Web服务器(服务
器)构成,两者之间采用超文本传送协议(HTTP)进行通信, HTTP协议的作用原理包括四
个步骤:连接,请求,应答。根据上述HTTP协议的作用原理,本文实现了GET请求的Web服
务器程序的方法,通过创建 TcpListener类对象,监听端口8080; 等待、接受客户机连
接到端口8080; 创建与socket字相关联的输入流和输出流;然后,读取客户机的请求信
息,若请求类型是GET,则从请求信息中获取所访问的HTML文件名,如果HTML文件存在,
则打开HTML文件,把HTTP头信息和 HTML文件内容通过socket传回给Web浏览器,然后关闭
文件。否则发送错误信息给Web浏览器。最后,关闭与相应Web浏览器连接的socket 字。
一、HTTP协议的作用原理
WWW是以Internet作为传输媒介的一个应用系统,WWW网上最基本的传输单位是 Web网
页。WWW的工作基于客户机/服务器计算模型,由Web 浏览器(客户机)和Web服务器(服务
器)构成,两者之间采用超文本传送协议(HTTP)进行通信。HTTP协议是基于TCP/IP协议
之上的协议,是Web浏览器和Web服务器之间的应用层协议,是通用的、无状态的、面向对
象的协议。HTTP协议的作用原理包括四个步骤:
连接:Web浏览器与Web服务器建立连接,打开一个称为socket(套接字)的虚拟文
件,此文件的建立标志着连接建立成功。
请求:Web浏览器通过socket向Web服务器提交请求。HTTP的请求一般是GET或POST命
令(POST用于FORM参数的传递)。GET命令的格式为:
GET 路径/文件名 HTTP/1.0
文件名指出所访问的文件,HTTP/1.0指出Web浏览器使用的HTTP版本。
应答:Web浏览器提交请求后,通过HTTP协议传送给Web服务器。Web服务器接到后,
进行事务处理,处理结果又通过HTTP传回给Web浏览器,从而在Web浏览器上显示出所请求
的页面。
例:假设客户机与www.mycomputer.com:8080/mydir/index.html建立了连接,就会发
送GET命令: GET /mydir/index.html HTTP/1.0。主机名为www.mycomputer.com的Web服
务器从它的文档空间中搜索子目录mydir的文件index.html。如果找到该文件,Web服务器
把该文件内容传送给相应的Web浏览器。
为了告知 Web浏览器传送内容的类型,Web服务器首先传送一些HTTP头信息,然后传
送具体内容(即HTTP体信息),HTTP头信息和HTTP体信息之间用一个空行分开。
常用的HTTP头信息有:
① HTTP 1.0 200 OK
这是Web服务器应答的第一行,列出服务器正在运行的HTTP版本号和应答代码。代码
“200 OK”表示请求完成。
② MIME_Version:1.0
它指示MIME类型的版本。
③ content_type:类型
这个头信息非常重要,它指示HTTP体信息的MIME类型。如:content_type:text/html
指示传送的数据是HTML文档。
④ content_length:长度值
它指示HTTP体信息的长度(字节)。
关闭连接:当应答结束后,Web浏览器与Web服务器必须断开,以保证其它Web浏览器
能够与Web服务器建立连接。
❹ WEB服务的工作原理
一个 Web 服务器也被称为 HTTP 服务器,它通过 HTTP 协议与客户端通信。这个客户端通常指的是 Web 浏览器。一个基于 Java 的 Web 服务器用到二个重要的类,java.net.Socket 与 java.net.ServerSocket ,并通过 HTTP 消息通信。因此,本文从讨论 HTTP 与这二个类开始,然后我将解释一个与本文相关的简单的 Web 应用。
The Hypertext Transfer Protocol(HTTP)
HTTP 是一种让 Web 服务器与浏览器(客户端)通过 Internet 发送与接收数据的协议。它是一个请求、响应协议--客户端发出一个请求,服务器响应这个请求。HTTP 运用可靠的 TCP 连接,通常用的 TCP 80 端口。它的第一个版本是 HTTP/0.9 ,然后被 HTTP/1.0 取代。当前的版本是 HTTP/1.1 ,由RFC2616(.pdf) 定义。
本节主要对应 HTTP 1.1 ,足够使你充分理解由 Web 服务器程序发出的消息。如果你对更加详细的知识有兴趣,可以参考 RFC2616 。
在 HTTP 中,客户端总是通过建立一个连接与发送一个 HTTP 请求来发起一个事务。服务器不能主动去与客户端联系,也不能给客户端发出一个回叫连接。客户端与服务器端都可以提前中断一个连接。例如,当用一个浏览器下载一个文件时,你可以通过点击“停止”键来中断文件的下载,关闭与服务器的 HTTP 连接。
HTTP 请求
一个 HTTP 请求包含三个部分:
Method-URI-Protocol/Version方法-地址-版本
Request header请求头
Entity body请求实体
下面是一个 HTTP 请求实例:
POST /servlet/default.jsp HTTP/1.1
Accept: text/plain; text/html
Accept-Language: en-gb
Connection: Keep-Alive
Host: localhost
Referer: http://localhost/ch8/SendDetails.htm
User-Agent: Mozilla/4.0 (compatible; MSIE 4.01; Windows 98)
Content-Length: 33
Content-Type: application/x-www-form-urlencoded
Accept-Encoding: gzip, deflate
LastName=Franks&FirstName=Michael
The Method-URI-Protocol/Version 在这个请求的第一行:
POST /servlet/default.jsp HTTP/1.1
其中 POST 是请求的类型。每个客户端 HTTP 请求可以是 HTTP 规范中指定的许多请求类型中的一种。HTTP 1.1 支持七种类型的请求,它们是 GET,POST,HEAD,OPTIONS,PUT,DELETE,TRACE。其中 GET 与 POST 是 Internet 应用中经常用到的二种请求类型。
URI 完整地指定了 Internet 资源。一个 URI 通常被解析为相对服务器的根目录。这样,它应该总是以一个 '/' 前缀开始。一个 URL 实际上是 URI 的一种类型。
Version 指的是该 HTTP 请求所用到的 HTTP 协议版本。
请求头包含了客户端环境与请求实体的一些有用的信息。例如它包含浏览器设定的语言、实体的长度等等。每条请求头用回车换行符(CRLF)分开。
一个非常重要的空行分开了请求头与实体,它标志着实体内容的开始。一些 Internet 开发书籍认为这个 CRLF 空行是 HTTP 请求的第四个部分。
在上面的 HTTP 请求中,实体只是简单以下的一行:
LastName=Franks&FirstName=Michael
在一个典型的 HTTP 请求中,请求实体内容会长得多。
HTTP 响应
与请求相似,HTTP 响应也由三部分组成:
Protocol-Status code-Description协议状态 描述代码
Response headers响应头
Entity body响应实体
以下是一个 HTTP 响应的实例:
HTTP/1.1 200 OK
Server: Microsoft-IIS/4.0
Date: Mon, 3 Jan 1998 13:13:33 GMT
Content-Type: text/html
Last-Modified: Mon, 11 Jan 1998 13:23:42 GMT
Content-Length: 112
<html>
<head>
<title>HTTP Response Example</title></head><body>
Welcome to Brainy Software
</body>
</html>
响应头的第一行类似请求头的第一行,告诉你所用的协议是 HTTP 1.1 ,请求成功(200=success),以及没有任何问题。
响应头类似请求头也包含了一些有用的信息。响应的实体响应本身的 HTML 内容。头与实体之间由回车换行的空行(CRLF)分开。
Socket 类
一个 socket 是一个网络连接的端点,它使得一个应用可以从网络读与写。在不同电脑上的二个应用软件能够通过收发字节流而彼此通信。要发一个信息到另一个应用程序,你需要知道它的IP地址,以及它的 socket 端口号。在 Java 中,一个 socket 用 java.net.Socket 来实现。
要创建一个 socket ,你可以用 Socket 类中几个构建方法中的一个。其中一个接受主机名与端口号作为参数:
new Socket("yahoo.com", 80);
一旦你成功地创建了一个 Socket 类的实例,你就可以用它去发送与接收字节流了。要发送字节流,你需要呼叫 Socket 类的 getOutputStream 方法来得到一个 java.io.OutputSteam 对象。要发送文本到远程的程序,你通常需要从返回的 OutputStream 创建一个 java.io.PrintWriter 对象。要从连接的另一端接收字节流,你需要呼叫 Socket 类的 getInputStream 方法,它返回一个 java.io.InputStream 对象。
以下代码创建一个可以与本地 HTTP 服务器通信的 socket (127.0.0.1 表示一个本地的主机),发送一个 HTTP 请求,并接收从服务器的响应。它还创建一个 StringBuffer 对象来接受响应,并打印到控制台。
Socket socket= new Socket("127.0.0.1", "8080");
OutputStream os= socket.getOutputStream();
boolean autoflush = true;
PrintWriter out= new PrintWriter( socket.getOutputStream(), autoflush );
BufferedReader in = new BufferedReader(
new InputStreamReader( socket.getInputStream() ));
// send an HTTP request to the web server
out.println("GET /index.jsp HTTP/1.1");
out.println("Host: localhost:8080");
out.println("Connection: Close");
out.println();
// read the response
boolean loop= true;
StringBuffer sb = new StringBuffer(8096);
while (loop) {
if ( in.ready() ) {
int i=0;
while (i!=-1) {
i = in.read();
sb.append((char) i);
}
loop = false;
}
Thread.currentThread().sleep(50);
}
// display the response to the out console
System.out.println(sb.toString());
socket.close();
注意要从 web 服务器得到正确的响应,你必须要发送用 HTTP 协议编译了的 HTTP 请求。如果你看了上面的 HTTP 部分,你应该能够理解上面代码中的 HTTP 请求。
❺ 简述web工作原理
Web的工作原理:
1、浏览器地址栏输入想要访问网站首页的地址;
2、用户向浏览器发送访问首页的请求;
3、服务器收取客户端的的访问请求;
4、服务器处理请求(若首页动态文档需要经过数据处理再返回,若为静态文档直接返回该文档即可);
5、服务器将请求的处理结果在客户端的浏览器显示。
(5)web应用原理扩展阅读:
web工作表现形式
1、超文本(Hyper text)
超文本是一种用户接口方式,用以显示文本及与文本相关的内容。现时超文本普遍以电子文档的方式存在。
其中的文字包含有可以链接到其他字段或者文档的超文本链接,允许从当前阅读位置直接切换到超文本链接所指向的文字。
2、超媒体(hypermedia)
超媒体是超级媒体的简称。是超文本(hypertext)和多媒体在信息浏览环境下的结合。用户不仅能从一个文本跳到另一个文本,而且可以激活一段声音,显示一个图形,甚至可以播放一段动画。
Internet采用超文本和超媒体的信息组织方式,将信息的链接扩展到整个Internet上。Web就是一种超文本信息系统,Web的一个主要的概念就是超文本链接。
3、超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。
参考资料来源:网络—web
❻ Web程序访问的基本原理是什么
WEB应用时是基于HTTP协议的,而Http协议时一种超文本传输协议,是计算机在网络中通信的一种规则。
Http请求信息包括请求行、请求头、空行和消息体。从请求行里面可以得到Http的信息发送方式(方式有很多种,但通常是GET或POST中的一种),请求的URL,以及Http版本;请求头里面是一些客服端的信息,比如使用的是什么浏览器,可以接受那些类型的数据等等。
Http响应信息包括状态行、响应头、空行、消息体。状态行由Http协议版本、响应状态码和响应描述组成。
WEB服务器最早只能发送静态页面,为了解决这个问题,人们想到的办法是CGI通用网关接口,用于调用其他程序产生内容。但是并发量一旦比较高的时候,这种CGI就显得性能很差。不过这样的思想给后面的技术提供了思路。
❼ 简述动态web应用系统的实现原理和工作流程
webwork工作流程与原理
关键字:
webwork
首先浏览器按照web.xml中指定的格式(比如:以.do结尾的请求)发起请求,servlet接收请求后从url中解析出action名称,同时遍历HttpServletRequest、HttpSession、ServletContext
中的数据,并将其复制到
Webwork的Map实现中,至此之后,所有数据操作均在此Map结构中进行,从而将内部结构与Servlet
API相分离。
接着ActionProxyFactory创建对应的ActionProxy实例。ActionProxyFactory
将根据Xwork
配置文件(xwork.xml)中的设定,创建ActionProxy实例,ActionProxy中包含了Action的配置信息(包括Action名称,
对应实现类等等)。ActionProxy创建对应的Action实例,并根据配置进行一系列的处理程序。包括执行相应的预处理程序(如通过Interceptor
将Map
中的请求数据转换为Action所需要的Java
输入数据对象等),以及对Action
运行结果进行后处理
是不是这个?
❽ web应用防火墙(WAF)的基本原理是什么
WAF,又名Web应用防火墙,能够对常见的网站漏洞攻击进行防护,例如SQL注入、XSS跨站等;目前WAF最基本的防护原理为特征规则匹配,将漏洞特征与设备自身的特征库进行匹配比对,一旦命中,直接阻断,这种方法能够有效防范已知的安全问题,但是需要一个强大的特征库支持,特征库需要保证定期更新及维护;但是对于零日漏洞(未经公开的漏洞),就需要设备建立自学习机制,能够根据网站的正常状态自动学习建立流量模型,以模型为基准判断网站是否遭受攻击。
❾ 简述WEB服务器的工作原理.
80端口是为http(hypertext
transport
protocol,超文本传输协议)开放的,这是上网冲浪使用最多的协议,主要用于在www(world
wide
web,万维网)服务上传输信息的协议。我们可以通过http地址加“:80”(即常说的“网址”)来访问网站的,比如<a
href="
http://www.cce.com.cn:80
"
target="_blank">
http://www.cce.com.cn:80
</a>,因为浏览网页服务默认的端口号是80,所以只要输入网址,不用输入“:80”。
端口漏洞:有些木马程序可以利用80端口来攻击计算机的,比如executor、ringzero等。
操作建议:为了能正常上网冲浪,我们必须开启80端口。
在windows2000/xp/server2003中要查看端口,可以使用netstat命令:
“开始">"运行”>“cmd”,打开命令提示符窗口。在命令提示符状态下键入“netstat-a-n”,按下回车键后就可以看到以数字形式显示的tcp和udp连接的端口号及状态.
命令格式:netstat-a-e-n-o-s
-a表示显示所有活动的tcp连接以及计算机监听的tcp和udp端口。
-e表示显示以太网发送和接收的字节数、数据包数等。
-n表示只以数字形式显示所有活动的tcp连接的地址和端口号。
-o表示显示活动的tcp连接并包括每个连接的进程id(pid)。
-s表示按协议显示各种连接的统计信息,包括端口号。
关闭端口
比如在windows2000/xp中关闭smtp服务的25端口,可以这样做:首先打开“控制面板”,双击“管理工具”,再双击“服务”。接着在打开的服务窗口中找到并双击“simplemailtransferprotocol(smtp)”服务,单击“停止”按钮来停止该服务,然后在“启动类型”中选择“已禁用”,最后单击“确定”按钮即可。这样,关闭了smtp服务就相当于关闭了对应的端口。
开启端口
如果要开启该端口只要先在“启动类型”选择“自动”,单击“确定”按钮,再打开该服务,在“服务状态”中单击“启动”按钮即可启用该端口,最后,单击“确定”按钮即可。
另外在网络连接属性中,选择“tcp/ip协议”属性,打开高级tcp/ip设置,在选项的那个页面打开tcp/ip筛选,在出现的设置窗口中也可以根据实现情况设置端口的打开和关闭,默认是未启用tcp/ip筛选。
❿ 简述web访问的工作原理
web本意是蜘蛛网和网的意思。现广泛译作网络、互联网等技术领域。表现为三种形式,即超文本(hypertext)、超媒体(hypermedia)、超文本传输协议(HTTP)等。
当你想进入一个网页, 或者其他网络资源的时候,通常你要首先在你的浏览器上键入你想访问网页的统一资源定位符(Uniform Resource Locator),或者通过超链接方式链接到那个网页或网络资源。这之后的工作首先是URL的服务器名部分,被名为域名系统的分布于全球的因特网数据库解析,并根据解析结果决定进入哪一个IP地址(IP address)。
接下来的步骤是为所要访问的网页,向在那个IP地址工作的服务器发送一个HTTP请求。在通常情况下,HTML文本、图片和构成该网页的一切其他文件很快会被逐一请求并发送回用户。
网络浏览器接下来的工作是把HTML、CSS和其他接受到的文件所描述的内容,加上图像、链接和其他必须的资源,显示给用户。这些就构成了你所看到的“网页”。
大多数的网页自身包含有超链接指向其他相关网页,可能还有下载、源文献、定义和其他网络资源。像这样通过超链接,把有用的相关资源组织在一起的集合,就形成了一个所谓的信息的“网”。这个网在因特网上被方便使用,就构成了最早在1990年代初蒂姆·伯纳斯-李所说的万维网