# 浅析URL
# 什么是URL
URL是为用户获取互联网资源的标识符, 有了它我们就能获取互联网上的一切内容.
# 组成
URL = 协议名 + 域名(IP) + 端口 + 路径 + 查询参数 + 锚点
# 协议
协议名用http
或者https
协议
# 域名
域名只能向云服务商或者第三方去购买, 价值从几块到几百万不等.主要看网站的运营.当用户在浏览器输入域名,域名会被发送到DNS服务器解析出对应的IP地址, 根据HTTP协议解析默认端口(http协议走80端口, https协议走443端口).
TIP
我们经常输入www.xxx.com
来访问某个网站.事实上这是错的.只需访问xxx.com
即可.www.xxx.com
只是xxx.com
的子域名, 并不就是其本身. 历史原因是当年的互联网都在蹭WWW
的热点.于是分分在自家域名前加www
. 好像就是一个互联网公司了. 子域名应用得很多. 最贴近我们的就是github.io
. 它是GitHub的域名, 然后以username.github.io
的形式给用户免费使用. 我的博客域名也是如此.
# 路径, 查询参数, 锚点
路径名也就是部署在服务器上的资源的路径, 通过查询参数可以使相同路径里的资源返回不同的内容, 锚点可以选择当前页面的不同部分.
警告
锚点的value不是中文, 用户输入中文也会被转义成一串字符.其次, 锚点的value不会随着URL传送到服务器上.某鹅厂程序员曾为此付出年终奖的代价.
# IP, DNS
IP定位了所有internet上设备的地址. 通过网线连接或者WIFI连接的设备的IP地址就是其连接的路由器的IP地址. 这些设备之间用内网IP进一步区分. 但外网IP是相同的.DNS就是将域名解析为IP地址.