WEB服务器也称为WWW(world wide web)服务器,主要功能是提供网上信息浏览服 务。 
(1)应用层使用HTTP协议。 
(2)HTML文档 格式。 
(3)浏览器统一资源定位符(URL)。

 web服务器使用超文本标记语言HTML(HyperText Mark Language)描述网络的资源,创建网页,以供Web浏览器阅读的。

HTML文档的特点是交互性,不管是一般文本还是图形,都能通过文挡中的链接连接到服务器上的其他文档,从而使客户端快速地搜寻想要的资料。

通俗的说:HTML文档就是可以实现将分散在多台WEB服务器的资源整合到同一个页面中进行展示给客户端的一种语言。

如何获取服务器上的资源:HTTP方法

    客户端连上web服务器后,若想获得web服务器中的某个web资源,需遵守一定的通讯格式,HTTP协议用于定义客户端与web服务器通迅的格式。换句话说:WEB浏览器与WEB服务器之间的一问一答的交互过程必须遵循一定的规则,这个规则就是HTTP协议。

    HTTP:HyperText  Transfer Protocal超文本传输协议:带有超级链接的文本,可以在文档之间实现跳转的文本。

http会话方式:http是基于TCP的,三次握手,四次断开

WEB服务器入门_服务器

http新版本还引入了MIME:(Mulitpurpose Internet Mail Extension ) 多用途互联网邮件扩展 的机制,它可以将非文本数据在传输前重新编码为文本格式,接受方能够用相反的方式将其还原为原来的格式,还能调用相应的程序将其打开。

MIME 引入到http 也就实现了文本之外的资源传输。

动态网页获取的方式:服务器端存储的文档并非HTML格式,而是编程语言开发的脚本,在用户访问的时候,会先获取客户端的特性,然后传递给脚本,让脚本执行一次,运行完成后生成HTML文档,再将生成的文档发给客户端。

一个网页当中包含静态内容和动态内容,动态内容部分才需要运行。

http报文格式:

http报文分为请求报文和响应报文

 

请求报文语法:

<method> <request-URL> <version>

<headers>

 

<entity-body> 

  1. <method>       <request-URL>      <version> 
  2. #资源获取方法  #请求的资源是什么  #对应请求协议的版本号 
  3.  
  4. <headers> 
  5. #http协议的首部 
  6. #空白行(必须的) 
  7. <entity-body>  
  8. #报文的内容 

响应报文语法:

<version> <status> <reason-phrase>

<headers>

 

<entity-body>

<version> <status> <reason-phrase> 

  1. #版本     #状态码   #解释状态的意义   
  2. <headers> 
  3. #响应报文首部 
  4.              #空白行 
  5. <entity-body> 
  6. #响应报文的主体 

资源获取的方法:POST、GET、HEAD、OPTIONS、DELETE、TRACE、PUT

常用的有: GET、 POST,不管POST或GET,都用于向服务器请求某个WEB资源。

 

状态码有哪些:

1xx:纯信息(用的很少)

2xx:成功类的信息(200正常响应,201,202)

3xx:重定向类的信息(301永久,302临时,304没发生任何改变)

4xx:客户端错误类的信息(404文件找不到)

5xx: 服务器端错误类的信息

例子:

  1. 请求报文: 
  2.  
  3. GET / HTTP/1.1 
  4.  
  5. Host: www.magedu.com 
  6.  
  7. Connection: keep-alive 

 

  1. 响应报文: 
  2.  
  3. HTTP/1.1 200 OK 
  4.  
  5. X-Powered-By: PHP/5.2.17 
  6.  
  7. Vary: Accept-Encoding,Cookie,User-Agent 
  8.  
  9. Cache-Control: max-age=3, must-revalidate 
  10.  
  11. Content-Encoding: gzip 
  12.  
  13. Content-Length: 6931 

注:上面两个报文的第一行通常称作报文“起始行(start line)”;后面的标签格式的内容称作首部域(Header field),每个首部域都由名称(name)和值(value)组成,中间用逗号分隔。另外,响应报文通常还有一个称作Body的信息主体,即响应给客户端的内容。