绝对的url,相关url和…?
我正在写一些文档,我有一个小词汇量问题:
-
http://www.example.com/en/public/img/logo.gif
被称为“绝对”url,对吗? -
../../public/img/logo.gif
被称为“相对”url,对吗? - 那么你怎么称呼这个:
/en/public/img/logo.gif
?
它也被认为是一个“绝对url”,虽然没有协议和域的部分?
或者它被认为是一个相对的url,但相对于域的根?
我search了一下,有些人把这个分类为绝对的,其他的则是相对的。
我该怎么称呼它? 一个“半绝对url”? 还是“半相对”? 还有另一个词吗?
这里是URL组件:
http://www.example.com/en/public/img/logo.gif \__/ \_____________/\_____________________/ #1 #2 #3
- scheme/协议
- 主办
- path
如果一个URL以scheme和scheme特定的部分开头(这里//
在http:
),那么这个URL被称为绝对URL 。 其他任何东西都是相对URL 。
如果URLpath以/
开头,则称为绝对URLpath 。 任何其他的URLpath称为相对URLpath 。
从而:
-
http://www.example.com/en/public/img/logo.gif
是绝对url , -
../../public/img/logo.gif
是一个具有相对URLpath的相对URL -
/en/public/img/logo.gif
是一个绝对URLpath的相对URL 。
注意: URI ( RFC 3986 )的当前定义不同于旧的URL定义( RFC 1738和RFC 1808 )。
URI术语的三个例子:
-
http://www.example.com/en/public/img/logo.gif
是一个URI , -
../../public/img/logo.gif
只是一个相对path和相对引用 -
/en/public/img/logo.gif
是一个绝对path的相对引用 。
它有时被称为虚拟url,例如在SSI中:
<!--#include virtual = "/lib/functions.js" -->
从微软有关绝对和相对URL的文档
URL指定存储在本地或联网计算机上的目标的位置。 目标可以是文件,目录,HTML页面,图像,程序等等。
绝对URL包含查找资源所需的所有信息。
相对URL使用绝对URL来定位资源作为起点。 实际上,通过连接绝对和相对URL来指定目标的“完整URL”。
绝对URL使用以下格式: scheme:// server / path / resource
相对URL通常只包含path ,可选地包含资源 ,但不包含scheme或服务器 。 下表定义了完整URL格式的各个部分。
scheme – 指定资源如何被访问。
服务器 – 指定资源所在的计算机的名称。
path – 指定通往目标的目录序列。 如果省略资源 ,则目标是path中的最后一个目录。
资源 – 如果包含, 资源是目标,通常是文件的名称。 它可能是一个简单的文件 ,包含一个单一的二进制字节stream或一个结构化文件 ,包含一个或多个存储器和二进制字节stream。
请记住URL的多less部分可以省略,使它们成为相对的(注意:其全部都是)。 这些都是有效的url:
-
http://example.com/bar?baz
-
?qoo=qalue
-
/bar2
-
dat/sly
-
//auth.example.com
(大多数人都对此感到惊讶!将根据当前资源使用http或https) -
#anchor
我已经看到它被称为根相对URL 。
Facebook会调用/en/public/img/logo.gif
一个协议相关的URL(参见他们的批处理API)。