目录
URL的定义
通俗意义上讲URL就是一个申请访问的一串请求,也相当于一个定位。像服务器输入你的请求,服务器(浏览器返回你的想要信息)
URL(Uniform Resource Locator)是指统一资源定位符,它用于在互联网上完整地描述网页和其他资源的位置。URL是一种标识符,它告诉用户如何通过网络连接到所需资源。URL是由协议、域名或IP地址、端口号、路径等组成的。通过在地址栏中输入URL,用户可以轻松地访问和定位到特定的网络资源。
完整的URL包括什么
现代:一个完整的URL包括:协议部分,网址,文件地址部分
http:// www.baidu.com.cn /work/ZMjEiM2klNiQ=html
协议 网址 文件地址
原始:协议+登录信息+服务器地址+服务器端口号+路径+查询字符串+锚点
http:// user:pass @www.baidu.com 80 dir/index.html ?uid=1 #ch1
协议 登录信息认证 服务器地址 端口号 带层次的文件路径 查询字符串 片段标识符
对于我们现代来说,一个完整的URL包括协议+网址+文件地址这样理解就足够了
URL的几个注意点
- URL是不区分大小写的,全部按照小写来处理
- 协议就是客户端和服务端约定的一种标准类似于统一语言统一格式这样方便交流,就是约定的一种规则,比如说你出去玩了要回学校,你先要跟门口大爷说你是这个学校的学生,你们约定都说中文,这个就是协议
- 然后是登录信息,服务器在服务的时候需要先弄清楚你有没有那个权限做这件事。你出示你的学生证,证明你是这个学校的学生,这个就是登录信息认证
- 服务器地址就是你的大学地址
- 端口号就是你要进入的哪号楼,教学楼(1号楼),宿舍楼(2号楼)
- 文件路径就是那个楼的具体位置
- 后面就是你要进行的具体操作
如果你想更深层次了解那么可以继续看、
协议部分
URL中的协议是用于指定与远程计算机进行通信的规则和标准。常见的URL协议包括HTTP、HTTPS、file、ftp、gopher、mailto、ed2k(代表软件:电驴)、thunder(代表软件:迅雷)等。
HTTP和HTTPS是用于访问远程网络资源的协议,其中HTTPS是HTTP的安全版。file协议用于访问本地计算机上的文件资源。ftp协议用于访问共享主机上的文件资源。gopher协议是一种早期的网络协议,用于访问基于文本的菜单驱动系统。mailto协议用于访问电子邮件地址,通过SMTP协议进行通信。ed2k和thunder协议则是用于访问P2P软件资源的协议。
在URL中,协议类型通常以一个斜杠(/)开始,后面跟着协议的名称,例如http://或ftp://等。通过使用不同的协议,我们可以访问不同类型的资源,并且可以根据需要选择使用不同的通信协议和标准。
网址是什么
我们常见的网址是www.baidu.com,实际上它是一个域名,会被DNS(域名转换协议)转换为27.0.0.1:3000(IP地址)(因为相比于IP地址,域名显然更好记)。实际上我们还需要去掉www的前缀,baidu.com 这个部分才叫域名。域名的最右边就是顶级域名
顶级域名是相对于二级域名来说的,域名是有两个或者两个以上字符串构成,最右边的字符串为顶级域名或者是一级域名
常见的几个顶级域名
- .com 表示商业机构
- .org 表示非营利性组织
- .gov 表示政府机构
- .edu 表示教育科研机构
顶级域名一般分为三类,国家顶级域名和国际顶级域名以及新顶级域名。
- 国家顶级域名:比如一个国家被称为国家顶级域名ccTLD,目前有200多个国家分配了顶级域名,只能使用本国家的域名,而不能使用其他国家的域名,当然也可以将ccTLD理解为基本规则。
- 国际顶级域名:国际顶级域名简称gTLDs,例如看见com就代表商业机构,org代表非盈利的组织。
- 新顶级域名:新顶级域名有很多,并且简称 gTLD,其中.reg就代表红色,.men就代表人。
用于表示国家顶级域名的比如
.cn 表示中国
.us 表示美国
.jp 表示日本
http://www.huawei.com.cn就表示华为的中国官网
如果华为在日本有服务器那日本官网的地址就有可能是:http://www.huawei.jp
域名和IP的关系
域名其实就是IP的别称,IP地址不需要解析,域名需要解析,输入域名会转换为IP地址,比如百度文库,百度,都会解析为百度服务器的地址。转换过程由域名系统服务协议来完成DNS
端口是什么
了解完网址了解一下端口
IP地址是你家,端口就是你家的每一个房间,卧室用来睡觉,餐厅用来吃饭,承担着不同的功能。当一个电脑启用了一个可以让远程其他电脑访问的程序,那么它就要开启至少一个端口号来让外界访问。我们可以把没有开启端口号的电脑看成一个密封的房间,密封的房间当然不能接受外界的访问,所以系统开启了一个可以让外界访问的程序后它自然需要在房间上开一个窗口来接受外界的访问,这个窗口就是端口。
为什么要给端口编号
既然一个程序开了一个端口,那不是外部信息都可以通过这个开启的端口访问吗?
不可以,因为数据使用端口号来通知传输协议送给哪个软件,数据是没有智慧的,如果很多程序共用一个端口号来接收数据,那么当外界的一个数据包送来后,传输层就不知道该送给哪一个软件来处理,这样就会导致混乱。
文件路径
带层次的文件路径其实就是网络服务器上资源的路径,在同一个服务器上,使用不同的路径,可以得到不同的页面。
https://www.yunliyunwai.cn/blog/detail/30139fa89a
/blog/detail......这个就是路径
查询字符串和片段标识符
其实就是你想要查询的具体信息
Anchor:锚点
锚点其实就是
片段标识符,它给予浏览器显示位于该“加书签”点的内容的指示。在HTML文档中,锚点可以用来在页面内部跳转,例如点击链接后,浏览器会滚动到定义锚点的那个点上;在视频或音频文档上,浏览器将转到锚点代表的那个时间。