为什么在实际链接起作用之前用“ //”代替http或https?


5

我只是注意到我可以写//google.com而不是写http://google.com,它仍然有效。

那是某种速记吗?也许是我的浏览器(Chrome 14)内置的东西?

使用双斜杠代替httpand安全https吗?


1
您可能只使用google.com或superuser.com或codegolf.stackexchange.com
Rob,

@Rob所说的-我认为没有任何现代浏览器会要求您在10年内输入http://,但这只是假设。(如果您想要与HTTP不同的协议,则必须输入该协议。)
Shinrai 2011年

问题是...为什么起作用?:D
daGrevis 2011年

您可能还对google按Ctrl + Enter 感兴趣。
RedGrittyBrick 2011年

@Shinrai:问题是关于使用非标准//而不是http://而不是完全省略它。
grawity 2011年

Answers:


4

//浏览器对类似//的处理方式因浏览器而异。由于标准用法是http://,因此可以在所有浏览器中正常使用。

话虽如此,大多数浏览器都会在可能的情况下尝试使用HTTP,因为这是最经常使用的浏览器。这也是最安全的选择,浏览器会尽可能最好地对HTTP流量进行沙盒处理,并且比假定地址为本地地址更安全。


我认为,如今他们甚至会先尝试https://。
Simon Verbeke

4
我看不出这如何回答问题。还不清楚“沙箱中的HTTP流量”是什么意思。
布兰登

14

// 所有主要浏览器均支持。当您开发基于Web的应用程序并且需要编写适用于HTTP和HTTPS的代码时,它非常有用。

您可以编写例如:<script src="//myscript.js" />并且无论您使用哪种协议,它都将始终有效。


1
这应该是公认的答案。
tapanandand '16

4

我知道这个问题很旧,但是被接受的答案并没有真正回答这个问题。

那是某种速记吗?也许是我的浏览器(Chrome 14)内置的东西?

是的,这是送达文档的任何协议的简写。它避免了可怕的“此页面同时包含安全和不安全的项目。您要显示不安全的项目吗?” 信息。

使用双斜杠代替http和https是否安全?

是的,当今所有主流浏览器都支持它。

它通常对您自己的站点没有用,但是对于包含来自其他站点(需要绝对URL)的资源非常有帮助,但不必担心HTTP / HTTPS混合模式。

这也是有益的,如果您的文档从既安全服务非安全的位置,就像一个开发站点和生产基地。

有关详细信息,请参见http://www.paulirish.com/2010/the-protocol-relative-url/

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.