(至少)有三种方法可以链接到资源:
href="foo/bar.html"
href="/foo/bar.html"
href="http://example.com/foo/bar.html"
第一个是“相对网址”,没问题。但我已经看到 (2) 和 (3) 都被称为“绝对 url”。哪个被正确称为“绝对 url”,另一个的正确名称是什么?
(参考相关标准或其他官方文档的奖励积分。)
(至少)有三种方法可以链接到资源:
href="foo/bar.html"
href="/foo/bar.html"
href="http://example.com/foo/bar.html"
第一个是“相对网址”,没问题。但我已经看到 (2) 和 (3) 都被称为“绝对 url”。哪个被正确称为“绝对 url”,另一个的正确名称是什么?
(参考相关标准或其他官方文档的奖励积分。)
“绝对 URL 包含大量信息,这些信息可能已经从基础文档检索的上下文中获知,包括方案、网络位置和部分 URL 路径。”
https://www.rfc-editor.org/rfc/rfc1808
数字 (2) 是绝对路径, (3) 是绝对 URL。
我喜欢这里的 W3 描述:
URL 是一个绝对 URL,如果解析它会导致相同的输出,而不管它是相对于什么解析的,并且该输出不是失败的。
它没有提出方案、路径或任何其他类似的概念,但基本上只是说相同的输入总是带来相同的输出。你只能说#3。
不过,我不会太拘泥于技术细节——如果你的宇宙是网站,#2 仍然是绝对的。//example.com/foo/bar.html
如果您的宇宙是计划,那么类似的东西也是绝对的。我认为从开发人员的角度来看,在这些情况下,“绝对”这个词仍然是有意义的。
我听说过#2 的术语是“root relative”。我相信这是一个有用的定义,因为它的含义在措辞中很清楚,并且很容易将其与 #1 和 #3 区分开来。
RFC 3986(URI 通用语法)在第4.3 节中指定。绝对URI如下规则:
absolute-URI = scheme ":" hier-part [ "?" query ]
因此,#2 不是绝对 URI
我相信(2)也是一个相关的 URL,(3)是一个绝对的 URL。
http://kb.iu.edu/data/abwp.html展示了一些例子。
在http://www.wisegeek.com/what-is-an-absolute-url.htm上,它解释为:
“绝对 URL 提供完整的位置信息。它以 http:// 开头并继续,包括每个细节。这意味着如果网站管理员要更改原始文件的位置,绝对 URL 规范会找到图像,而相对 URL 规范不会。”
只有#3 符合绝对 URL 的定义。1 和 2 是相对 URL。
相对 URL(定义在 [RFC1808] 中)不包含任何协议或机器信息,其路径通常指的是与当前文档位于同一台机器上的 HTML 文档。相对 URL 可能包含相对路径组件(“..”表示父位置)并且可能是片段 URL。来源:http ://www.w3.org/TR/WD-html40-970708/htmlweb.html
URL 是一个绝对 URL,如果解析它会导致相同的输出,而不管它是相对于什么解析的,并且该输出不是失败的。来源:http ://www.w3.org/TR/url/
通过一些进一步的视觉示例支持其他答案。
https://datacash.custhelp.com/app/answers/detail/a_id/1067/~/fully-qualified-url
完全限定的 URL 包含 http:// (或https://www)。如果 URL 只是您的域,则还应提供尾随 /。
这些 URL 是完全限定的:
http://www.datacash.com/
https://www.datacash.com/
http://datacash.com/
https://datacash.com/
http://www.datacash.com/Transaction.html
https://www.datacash.com/Transaction.html
http://datacash.com/Transaction.html
https://datacash.com/Transaction.html
这些 URL 不是完全限定的:
datacash.com
datacash.com/
datacash.com/Transaction.html
www.datacash.com
www.datacash.com/
www.datacash.com/Transaction.html
http://datacash.com
https://datacash.com
http://www.datacash.com
https://www.datacash.com