无方框URL在HTTP中有效吗?

时间:2015-02-09 14:13:46

标签: html http url-scheme

这样的无方案网址
//blog.flowl.info/

在HTTP(rfc?)中有效,例如在普通HTTP 请求响应中,还是仅在HTML属性和内容中有效?

HTTP/1.1 302 - Moved
Location: //blog.flowl.info

GET //blog.flowl.info

更新

我现在有两个矛盾的答案。哪个是对的?

Sidequestion: 为什么浏览器甚至会解决这些问题:

//blog.flowl.info/ 
->
http://blog.flowl.info/

而不是:

//blog.flowl.info/
->
http://blog.flowl.info///blog.flowl.info/

2 个答案:

答案 0 :(得分:7)

它们在位置标题字段(http://greenbytes.de/tech/webdav/rfc7231.html#header.location)中有效。

它们在HTTP请求的请求行中无效。

浏览器以这种方式解析它,因为这是相对参考分辨率的工作方式(http://greenbytes.de/tech/webdav/rfc3986.html#reference-resolution)。

答案 1 :(得分:-1)

据我所知,协议/方案是URL的必需部分,并由服务器和中间代理/网关等用于推断如何在普通TCP / IP之上处理通信。如果您不使用http / https,而是使用其他一些众所周知的甚至是自定义协议,则必须指定它。

创建浏览器是为了浏览通过HTTP协议提供的html页面。因此,如果您不指定scheme,它会自动将其默认为http。还有一个绝对v / s相对URL的概念,您需要了解如何通过浏览器解析后续URL。