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的,三次握手,四次断开
http新版本还引入了MIME:(Mulitpurpose Internet Mail Extension ) 多用途互联网邮件扩展 的机制,它可以将非文本数据在传输前重新编码为文本格式,接受方能够用相反的方式将其还原为原来的格式,还能调用相应的程序将其打开。
MIME 引入到http 也就实现了文本之外的资源传输。
动态网页获取的方式:服务器端存储的文档并非HTML格式,而是编程语言开发的脚本,在用户访问的时候,会先获取客户端的特性,然后传递给脚本,让脚本执行一次,运行完成后生成HTML文档,再将生成的文档发给客户端。
一个网页当中包含静态内容和动态内容,动态内容部分才需要运行。
http报文格式:
http报文分为请求报文和响应报文
请求报文语法:
<method> <request-URL> <version>
<headers>
<entity-body>
- <method> <request-URL> <version>
- #资源获取方法 #请求的资源是什么 #对应请求协议的版本号
- <headers>
- #http协议的首部
- #空白行(必须的)
- <entity-body>
- #报文的内容
响应报文语法:
<version> <status> <reason-phrase>
<headers>
<entity-body>
<version> <status> <reason-phrase>
- #版本 #状态码 #解释状态的意义
- <headers>
- #响应报文首部
- #空白行
- <entity-body>
- #响应报文的主体
资源获取的方法:POST、GET、HEAD、OPTIONS、DELETE、TRACE、PUT
常用的有: GET、 POST,不管POST或GET,都用于向服务器请求某个WEB资源。
状态码有哪些:
1xx:纯信息(用的很少)
2xx:成功类的信息(200正常响应,201,202)
3xx:重定向类的信息(301永久,302临时,304没发生任何改变)
4xx:客户端错误类的信息(404文件找不到)
5xx: 服务器端错误类的信息
例子:
- 请求报文:
- GET / HTTP/1.1
- Host: www.magedu.com
- Connection: keep-alive
- 响应报文:
- HTTP/1.1 200 OK
- X-Powered-By: PHP/5.2.17
- Vary: Accept-Encoding,Cookie,User-Agent
- Cache-Control: max-age=3, must-revalidate
- Content-Encoding: gzip
- Content-Length: 6931
注:上面两个报文的第一行通常称作报文“起始行(start line)”;后面的标签格式的内容称作首部域(Header field),每个首部域都由名称(name)和值(value)组成,中间用逗号分隔。另外,响应报文通常还有一个称作Body的信息主体,即响应给客户端的内容。