闲聊URL

1,349 阅读3分钟

前言

URL 即统一资源定位符(Uniform Resource Locator)。它是互联网上标准资源的地址,通过它来对资源定位。

URL语法

统一资源定位符的语法为:

协议://用户名:密码@子域名.域名.顶级域名:端口号/目录/文件名.文件后缀?参数=值#标志

常见协议

我们访问资源时会有不同的协议,比如http:ftp:news:。不同的协议对于客户端可用于区分不同的资源类型,比如 http 协议对应 web 服务器资源,比如 ftp 协议对应 ftp 服务器资源。

http

超文本传输协议,格式为,

http://username:password@host:80/directory/file.html?query#ref

其中 username 和 password 表示用户名和密码,可省略。host 为 web 服务器域名,端口80也可以省略。directory/file.html 为文件路径名,query 为参数,ref 为页面的位置。

ftp

文件传输协议,格式为,

ftp://username:password@host:21/directory/file.html

其中 username 和 password 表示用户名和密码,可省略。host 为 ftp 服务器域名,端口21也可以省略。directory/file.html 为文件路径名。

news

Usenet新闻组,格式为,

news://news.newsgroup.com.hk

其中 news.newsgroup.com.hk 为新闻组名。

mailto

电子邮件地址,格式为,

mailto://123456@qq.com

其中 123456@qq.com 为邮件地址。

file

本地电脑的文件,格式为,

file://localhost/d:/directory/1.txt

其中 localhost 为计算机名,可省略。d:/directory/1.txt 为文件路径名,这里是 d 盘的 directory 目录的 1.txt 文件。

文件名省略

  1. https://blog.csdn.net/wangyangzhizhou/article/details/80532737/ ,这里的 URL 以/结尾,说明 80532737 后面是有文件名被省略了,服务器其实可能做的处理就是在对应目录下提供默认的 index.html 或 default.html 之类的页面,或忽略最后的斜杆。
  2. https://github.com/ ,类似的,在域名后添加/,那么说明它访问一个叫/的目录,即为根目录。那他就访问根目录下的默认文件。
  3. https://github.com ,这种情况是目录和文件名都省略掉了,这时对应哪个文件?那就规定这种情况访问根目录下的默认文件。
  4. https://blog.csdn.net/wangyangzhizhou ,这种情况本该理解为文件名,但实际上很多人没有正确理解规则,所以也可以看成目录,于是如果存在 wangyangzhizhou 文件时则以文件名来处理,如果存在 wangyangzhizhou 目录则以目录来处理。

-------------推荐阅读------------

我的2017文章汇总——机器学习篇

我的2017文章汇总——Java及中间件

我的2017文章汇总——深度学习篇

我的2017文章汇总——JDK源码篇

我的2017文章汇总——自然语言处理篇

我的2017文章汇总——Java并发篇


跟我交流,向我提问:

这里写图片描述

公众号的菜单已分为“读书总结”、“分布式”、“机器学习”、“深度学习”、“NLP”、“Java深度”、“Java并发核心”、“JDK源码”、“Tomcat内核”等,可能有一款适合你的胃口。

为什么写《Tomcat内核设计剖析》

欢迎关注:

这里写图片描述