什么是URL?
我们每日都在上网,但是对于上网冲浪的过程中发生了什么,理解不够清楚。比如打开一个网页,你要输入一个网址。什么,你是从导航页进入的,那么实际上导航页这个初始页的网址是浏览器帮你输入的,你点击一个网址的名称或者logo进行跳转,也相当于是在新打开的页面上方输入了网址。我们访问网站,实际上都是在访问连接在互联网中发布的某些内容、服务,即网络资源。
我们大家俗称为网址的东西,实际学名就叫URL,也是今天这篇笔记探讨的对象:URL(Uniform Resource Locator) 中文名叫统一资源定位器。
它表示某一网络资源存在于计算机网络上的位置,同时也是浏览器检索互联网上公布的任何资源的渠道。互联网上的每一个网页都具有一个唯一的名称标识,也就是URL。
URL由哪几块部分组成?
在输入网址时,在点击跳转到新页面时,我们都会在地址栏看到URL。
它主要由6个部分组成:
Protocol + Domain Name + Port + Path to the file + Parameters + Anchor
从左到右依次翻译,就是协议、域名、端口、路径(网络服务器上资源的路径)、查询参数(发送给服务器的额外参数)、锚点(这部分不会发送给服务器)
协议
我们传输数据,分享网络资源,都需要遵守某些协议。protocol(协议)很有多种,其中最常用的是HTTP和HTTPS协议,他们也是目前互联网中应用最广的协议。
-
http 通过常规HTTP访问该资源。 格式 HTTP://
-
https 通过较为安全的HTTPS访问该资源。 格式 HTTPS://
-
此外还有例如ftp,通过FTP访问资源。格式 FTP://
域名
baidu.com就是域名,也就是你想访问的网站,不用解释
端口
端口号均为整数,可选,在省略时会使用对应协议方案的默认端口,各种传输协议都有默认的端口号,如HTTP的默认端口为80,而HTTPS的端口默认为443。一般访问某个网址时,都是使用的默认端口号,只有特殊情况下才使用其他指定端口。不同的服务可以使用不同的端口,一共可以有65535个端口,理论上来讲,基本是够用了。
路径
路径可以是由零个或多个“/”符号隔开的字符串,表示主机上的一个目录或文件地址。比如 baidu.com/index.html 中后面的html文件就是你所要访问的路径。服务器主机上存放了很多资源,你要具体访问哪一个资源,就需要输入路径,这跟我们PC上访问C盘,D盘上存储的内容是一个道理。
查询参数
比如你在百度搜索一下黄金的行情,baidu.com/s?wd=黄金 。 s?wd=黄金这部分就是查询参数。根据你的关键字,搜索引擎返回相关的搜索结果。当然也可以是其他性质的参数,你在访问主机资源库中特定的内容时,需要预先提供的相关参数。查询参数可有多个参数,用“&”符号隔开,每个参数的名和值用“=”符号隔开。
锚点
锚点其实就是定位一个页面中某些特定内容的位置用的。比如新闻网站主页分为很多板块,有 热点、娱乐、体育等等。你点击一个板块的标签,给你跳转到同一个页面下该板块的位置,这就是锚点。需要注意的是,锚点是一个纯用户本地的操作,它并不会向服务器发送请求。
DNS是什么?
DNS(Domain Name System)中文叫域名解析,你输入一个网站的域名后,浏览器并不知道具体要访问哪一个IP,你的请求到底是要发送到互联网上的哪一个设备终端。发送请求前,首先需要进行域名的解析。这里就用到DNS了,它会对你输入的域名进行解析,找到该网站服务器指定的IP地址发送请求。也就是DNS会对域名和IP地址进行一个匹配。一个网站为了使得用户访问达到均衡负载,通常会使用多个服务器IP地址来处理用户访问请求。这一步,也是用DNS去实现,比如最常见的根据你的访问设备所在地划分不同的服务器来进行发送请求。
nslookup 命令是一个查询DNS的记录,查看域名解析是否正常,在网络故障的时候用来诊断网络问题时会用到的命令。name server lookup,也就是查询服务域名。nslookup命令的主要用法如下:
-
直接查询某网站域名如
nslookup baidu.com -
附带一些参数的查询,这里就不展开说明了
IP是什么?
IP(Internet Protocol),因特网互联协议。
IP是构成互联网的基础。根据端到端的设计原则,IP协议会提供一种联网设备间的数据包传输服务。IP地址就是你的设备或者终端在互联网中的位置标记,它是一种唯一性的标识。
IP主要包含三方面内容:IP编址方案、分组封装格式及分组转发规则。
IP地址又分 内网IP 和 外网IP,这两者之间是隔离的,唯一连接渠道是路由器。
关于IP无法详细描述,长篇大论也说不完,只能先谈一些最初步的理解。
ping 命令是用来探测本机与网络中另一主机之间是否可达的命令。如果两台主机之间ping不通,则表明这两台主机不能建立起连接。
想知道网络通不通,或者某个网站的连接通不通,直接 ping 一下就好。
比如 bing baidu.com
在一定的时间内,如果本机收到了应答包,则说明它与请求的网站之间网络连接通畅,如果没有收到,则说明网络连接不通。
除了监测是否可通讯以外,ping命令还可以利用应答时间和发起时间之间的差值,计算出数据包的延迟耗时。
域名种类有哪些?.
域名种类也很值得拿出来说道说道,破除一些常见的误区和疑惑。拿我自己来说,以前以为访问某个网站,www是必须加的,实际上是一种误区,因为不了解域名。
域名可分为:
- 根域名(root domain)(根域名
.root对于所有域名都是一样的,所以平时是省略的。) - 顶级域名(TLD)
一般顶级域名(gTLD)(如 .com、.org )
国别顶级域名(ccTLD)(如 .cn、.io、.tv) - 次级域名(SLD)(写在前端,如mail)
- 子域名(如en等指定显示语言)
- 三级域名(主机名 host)(即:www)