HTTP协议的URL介绍

来源:互联网 发布:pdf文件格式扫描软件 编辑:程序博客网 时间:2024/05/22 06:23

一、url通过http协议,用于定位网络资源。
http_url=http://host[:port][abs_path][?query]
说明:
host:合法的主机名或者ip地址
port:端口,缺省为80
abs_path:指定请求资源的URI,如果URL中没有给出abs_path,那么当它被当做资源请求的URI使用时,必须以“/”的形式给出,通常浏览器自动帮我们完成了,如果abs_path为空,则等同于值为“/”的abs_path

例如:
1.浏览器输入http://www.fjou.tmc,浏览器自动转换为http://www.fjou.tmc/
2. http://192.168.206.8:8080/jsp/setNotice.jsp

二、URL访问过程
以以下过程为例,对HTTP的操作过程进行说明

例子:浏览器中打开一个网页,比如http://ishouke.blog.sohu.com,然后关闭浏览器。

操作过程:
1.预处理操作(比如查找缓存,分析链接指向页面的URL)以及等待网络连接可用。

2. DNS查找:浏览器调用解析程序,成为DNS的一个客户,把待解析的域名“ishouke.blog.sohu.com”,放在DNS请求报文中,以UDP用户数据报方式发给本地域名服务器。本地域名服务器在查找域名后,把对应的IP地址放在回答报文中返回。浏览器进程获得域名对应的IP地址后才能进行通信。
注意:如果本地的域名服务器不能回答该请求,则此域名服务器暂时成为DNS的另一个客户,并向其他域名服务器发出查询请求。这种过程直到能够回答该请求的域名服务器为止。

3.建立TCP链接:浏览器找到主机Ip,即域名ishouke.blog.sohu.com对应的ip地址后,向服务器发送TCP请求报文,请求建立TCP链接。

4.发送HTTP请求报文:一旦监听到连接请求并建立了TCP连接之后,浏览器向web服务器发出浏览某个页面的请求,即获取文件指令如:
get http://ishouke.blog.sohu.com/
get http://ishouke.blog.sohu.com/page/widget.do?ebi=506e9d91a2&m=view&
type=categories

5.发送HTTP响应报文:服务器收到浏览器的HTTP请求报文后,返回请求的页面,作为响应。

6.浏览器展示返回的页面

7.释放TCP连接

说明:
1. HTTP协议使用了面相对象的TCP作为运输层协议,保证了数据的可靠运输。HTTP不必考虑数据在传送过程中被怎样丢弃后又怎样重传。SO,HTTP协议本身是无连接的。也就是说,虽然HTTP使用了TCP连接,但通信双方在交换HTTP报文之前不需要建立HTTP连接

2. HTTP协议是无状态的,也就是说,同一个客户第二次访问同一个服务器上的页面时,服务器响应和第一次被访问时相同(假定被访问页面没有更新),服务器并不记得曾经访问过这个用户,也不记得为该客户服务过多少次。HTTP的无状态特性简化了服务器的设计,以便支持大量并发的HTTP请求。

0 0
原创粉丝点击