网页中的路径
“路径”用来指定文件的位置。
网页中的路径使用URL(Uniform Resource Locator统一资源定位器)。
【参见:https://developer.mozilla.org/zh-CN/docs/Learn/Common_questions/What_is_a_URL】
URL的组成,格式:
schema://host[:port#]/Path to resource [?Parameters][#anchor]
如:https://www.baidu.com/index.html?name=mo&age=25#dowell
一个完整的URL包括以下几部分:
schema:指定底层使用的协议模式,在Internet中可使用多种协议,如:
file 资源是本地计算机上的文件。格式file:///,注意后边应是三个斜杠。
ftp 通过 FTP访问资源。格式 FTP://
http 通过 HTTP 访问该资源。 格式 HTTP://
https 通过安全的 HTTPS 访问该资源。 格式 HTTPS://
Domain Name:也称为host主机,指服务器的域名(Domain Name)或者IP地址。
port:跟在域名后的端口,域名和端口之间使用 冒号 作为分隔符,一般端口号默认是80,使用默认端口号时可以省略不写。有时候出于安全或其他考虑,可以在服务器上对端口进行重定义,即采用非标准端口号,此时,URL中就不能省略端口号这一项。
Path to resource:虚拟目录部分,指向访问资源的路径(文件名),最后是文件名部分,如果没有文件名,则使用默认文件名,如 index.vue、index.html、index.asp。
Parameters:参数部分,问号开头,发送给http服务器的数据,允许有多个参数,使用&链接多个参数。
anchor:锚部分,#后面的部分,也称为片段(fragment)标识符,锚用来定位页面展示的开始位置,是非必须的。例如一个网页中有多个名词解释,可用其直接定位到某一名词解释。
URL 分成两种:绝对 URL 和相对 URL。
绝对URL:指向另一个网站 (比如 https://www.w3school.com.cn/i/eg_tulip.jpg)
相对URL:指向网站中的文件 ,假设在https://www.w3school.com.cn网站中,如果URL开头没有斜杠,它将与当前页面相对。示例: i/eg_tulip.jpg; 如果URL以斜线开头,它将与域相对。示例:/i/eg_tulip.jpg。
顺便提示:网页中的路径分隔符是/,window操作系统的路径分隔符是\。
【下面选自https://www.bookstack.cn/read/html-tutorial/spilt.4.docs-url.md】
绝对 URL 指的是,只靠 URL 本身就能确定资源的位置。这意味着,URL 必须带有资源的完整信息。
相对 URL 指的是,URL 不包含资源位置的全部信息,必须结合当前网页的位置,才能定位资源。比如,当前网页的 URL 是https://www.example.com/path/index.html,该网页上面有一个资源,URL 指向a.html,这个就是相对 URL。因为只知道a.html,并不能定位资源。浏览器假定,a.html与当前网址在同一个子目录下面,从而得到绝对 URL https://www.example.com/path/a.html。
相对 URL 如果以斜杠(/)开头,就表示网站的根目录。否则,必须以当前目录为起点,推算资源的位置。比如,相对 URL /foo/bar.html表示网站根目录的子目录foo,foo/bar.html表示在当前目录的foo子目录。
URL 还可以使用两个特殊简写,表示特定位置。
.:表示当前目录,比如./a.html(当前目录下的a.html文件)
..:表示上级目录,比如../a.html(上级目录下的a.html文件)
这两种简写可以多个连用,比如../../表示上两级目录。
绝对 URL 也可以使用这两个简写,比如www.example.com/./index.html等同于www.example.com/index.html,这时.相当于根目录的当前目录,即根目录本身。