Html 使用图像源的协议相关URL防止安全/不安全错误

Html 使用图像源的协议相关URL防止安全/不安全错误,html,image,http,https,protocol-relative,Html,Image,Http,Https,Protocol Relative,是否有人知道使用图像源来防止混合内容安全警告是否有问题 例如,链接图像,如: <img src="//domain.com/img.jpg" /> 而不是: <img src="http://domain.com/img.jpg" /> or <img src="https//domain.com/img.jpg" /> 或 在我的测试中,我没有看到任何迹象表明这是错误的,但我不确定它是否存在会产生问题的边缘情况 编辑我看到它在使用PHP函数时会抛

是否有人知道使用图像源来防止混合内容安全警告是否有问题

例如,链接图像,如:

<img src="//domain.com/img.jpg" />

而不是:

<img src="http://domain.com/img.jpg" />
or
<img src="https//domain.com/img.jpg" />
在我的测试中,我没有看到任何迹象表明这是错误的,但我不确定它是否存在会产生问题的边缘情况


编辑我看到它在使用PHP函数时会抛出错误。

如果使用协议相关URL,IE 7和IE 8将抛出错误。如果您仅将其用于“图像源”,则不会对您造成影响,只是以防万一。

发现了使用协议相关URL的一个有趣的问题:

你必须小心,只使用 此语法适用于指定的页面 浏览器。如果你把它放在电子邮件里, 将没有可使用的基页URL 在解析相对URL时。在里面 至少在Outlook中,此URL将是 解释为Windows网络文件, 不是你想要的

从本质上讲,只要请求是由浏览器而不是外部电子邮件客户端发出的,就没有有效的理由说明这不应该起作用

更多信息来自:

没有方案的相对URL(http: 或https:)是有效的,根据RTF 3986: 第4.2节。如果客户被它噎住了, 那是客户的错,因为 它们不符合URI RFC中指定的语法

你的例子是有效的,应该有用。 我使用了相对URL方法 我自己在人口密集的地点和 他们没有任何抱怨。还有,我们 在Firefox、Safari、, IE6,IE7和歌剧。这些浏览器 理解URL格式


使用协议相关URL时,应考虑以下事项:

1) 所有现代浏览器都支持此功能

2) 我们必须确保请求的资源可以通过HTTP和HTTPS访问。如果HTTP重定向到HTTPS就可以了,但是在这里,加载时间会比直接向HTTPS发出请求的时间稍长

3) Internet Explorer 6不支持此功能

4) InternetExplorer7和8支持该功能,但如果css文件使用协议相关URL,它们将下载两次样式表