当我们打开浏览器想要访问一个网站或者ftp服务器时,必须要输入一串字符串,比如:https://blog.csdn.net/或者:ftp://192.168.0.111/这样我们就可以得到一个页面或者一个html格式的文件。那么这个地址是什么意思呢?您必须以URI、URL和URN开头。一、URI、URL、URN概念URI=UniformResourceIdentifier统一资源标识符URL=UniformResourceLocator统一资源定位符URN=UniformResourceName统一资源名称看完这个概念相信大家还是不明白是什么意思。简单的说,就是URI是一个抽象的定义。不管用什么方法来表达,只要能定位到一个资源,就称为URI。原本设想使用两种定位方式:1、URL,使用地址定位;2、URN使用名称定位。比如:去一个村子找一个特定的人(URI),如果用地址:某个村子的房子第一个房间的主人就是这个URL,如果用身份证号+名字找,它是URN。原来uri包括url和urn,但是urn后来没有流行起来,导致现在的uri几乎都是url。三者的几何关系如下:其实一直以来都存在误解。很多人认为URI是URL的子集,其实应该是颠倒过来的。URL是URI的子集。URIRFC3986什么是URL?URL代表统一资源定位符(UniformResourceLocator)。作用是告诉用户Web上某个资源的地址。这个资源可以是HTML页面,CSS文档,图片或者猫剪辑等。例如:使用HTTP协议访问Web服务器时:当使用FTP协议下载上传文件,读取本地文件时客户端计算机,它是细分的,可以分为几个部分。协议尽管URL的编写方式多种多样,但它们有一个共同点。开头的内容必须是协议类型,可以是http、ftp、mailto或https。这部分文字表示浏览器应该使用的访问方式。,将使用//作为分隔符。决定了后面的部分怎么写,才不会造成混乱。用户名/密码用户名和密码通常可以省略。域名域名为www.gitee.com,在发送请求之前,会解析IP到DNS服务器。如果已经知道ip,可以跳过DNS解析这一步,直接将IP作为域名的一部分。端口有时域名后面有一个端口,与域名之间用:隔开,端口不是URL的必要部分。当URL为http://时,默认端口为80,https://时,默认端口为443,ftp://时,默认端口为21。文件路径/文件名从第一个开始/以最后一个/结尾,这是虚拟目录的一部分。虚拟目录不是URL的必要部分。上例中http协议url中的虚拟目录为/yikoulinux/chat/blob/master/,从域名最后一个/到?,是文件名部分;如果没有?,就是从域名的最后一个/开始到#,就是文件名部分;如果没有?和#,那么域名的最后一个/从头到尾就是文件名部分。比如前面的httpurl例子,giteeserver/yikoulinux/chat/blob/master/下的文件chat.h:文件名不是URL的必要组成部分。文件名的省略如下:http://www.gitee.com/dir/我们可以这样理解,以“/”结尾的意思就是省略了本来应该放在/dir/后面的文件名。根据URL的规则,文件名可以像以前一样省略。但是没有文件名,服务器怎么知道要访问哪个文件呢?实际上,我们会在服务器上预先设置省略文件名时访问的默认文件名。此设置因服务器而异,在大多数情况下是一个文件名,如index.html或default.htm。因此,当像以前一样省略文件名时,服务器将引用/dir/index.html或/dir/default.htm[由Web服务器配置]。http://www.gitee.com/这个网址也是以“/”结尾的,意思是访问一个名为“/”的目录。此外,由于文件名被省略,结果是访问一个类似/index.html或/default.htm的文件。http://www.gitee.com这次连结尾的“/”都省略了。连目录名都这样省略的时候,真不知道请求的是哪个文件,太过分了。不过,这种写法也是允许的。当没有路径名时,表示访问根目录下预设的默认文件,即/index.html或/default.htm等文件,这样就不会混淆了。http://www.gitee.com/yikoupeng一般来说,这种情况会按照以下约定处理:如果web服务器上有名为yikoupeng的文件,那么yikoupeng会被当作文件名;如果存在名为yikoupeng的目录,则将yikoupeng作为目录名进行处理。关于rfc协议的文档,可以登录以下网站查询:https://www.rfc-editor.org/搜索URL协议的说明,有25条结果。我们要查看协议,只需单击它。本文档可以两种格式查看:以下仅复制第一页:网络工作组T.Berners-Lee征求意见:1738CERNCategory:标准轨道L.MasinterXeroxCorporationM.McCahill明尼苏达大学编辑1994年12月统一资源定位器(URL)本备忘录的状态本文档为Internet社区指定了Internet标准跟踪协议,并请求讨论和改进建议。标准化状态和状态请参考当前版本的“互联网官方协议标准”(STD1)本协议的s。本备忘录的分发不受限制。摘要本文档指定了一个统一资源定位器(URL),即通过Internet定位和访问资源的形式化信息的句法和语义。本文档描述了通过Internet提供的资源的紧凑字符串表示的语法和语义。这些字符串称为“统一资源定位器”(URL)。该规范源自万维网全球信息倡议引入的概念,其对此类对象的使用可追溯到1990年,并在“WWW中的通用资源标识符”RFC1630中进行了描述。URL的规范旨在满足要求在“Internet资源定位器的功能要求”[12]中列出。本文档由Internet工程任务组的URI工作组编写。评论可以发送给编辑,或者发送给URI-工作组
