我注意到指向不同维基百科子域上的路径的维基百科链接使用具有以下语法的链接://<SERVER_NAME>/<REQUEST_URI>
。例如,从file page到file的链接显示(例如)为//upload.wikimedia.org/wikipedia/en/9/95/Stack_Overflow_website_logo.png
。我熟悉绝对路径(现在思考两次)和相对路径以及如何使用它们。但是,我从未见过这种用法。我假设这指向使用当前协议的新服务器名称。它是否正确?是否有官方名称(或广泛接受的名称)?
答案 0 :(得分:4)
你是对的。 //some/path
的链接是协议相对路径。
即如果您当前在http://something.example.com
,//google.com
的链接将指向http://google.com
。
如果您目前在https://something.example.com
,//google.com
的链接将指向https://google.com
。
最常见的用法可以在html5样板中看到。
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.js"></script>
请谷歌通过http和https提供javascript cdn。 因此,为了避免安全警告,如果我们使用https,则将其加载到https;如果我们使用http,则加载http。
请注意:
不幸的是,您无法对谷歌分析做同样的事情。
他们将域名ssl.google-analytics.com
和www.google-analytics.com
用于https和http。
答案 1 :(得分:2)
看起来这些//example.com
URI被称为“Scheme Relative”或“Protocol Relative”,在这个问题上有更多关于它的信息:
Network-Path Reference URI / Scheme relative URLs
修改强>
显然,这可能实际上被称为“网络路径引用”,如下所示: http://tools.ietf.org/html/rfc3986#section-4.2
引用:
以两个斜杠字符开头的相对引用被称为 网络路径参考;这种参考很少使用。一个 以单个斜杠字符开头的相对引用是 称为绝对路径参考。这样做的相对参考 不以斜杠字符开头称为相对路径引用。