1

我目前正在开发一个网络项目,并正在寻找有关预先连接到子资源域的建议。

我的假设是,理想情况下,应该使用相同的协议从域中提供所有子资源,从而节省到服务器的往返行程。但是,在我正在使用的代码的某些区域中,一些资源是通过 http 加载的,而在其他区域,资源是通过 https 加载的。

出于这个问题的目的,请想象我无权访问代码的某些部分。

为了获得预连接的好处,(从现在到与其他人联络以使用相同的路线),最好包括:

<link rel="preconnect" href="http://www.example.com" />
<link rel="preconnect" href="https://www.example.com" />

或使用以下协议相对 URL:

<link rel="preconnect" href="//www.example.com" />
4

1 回答 1

2

您需要预先连接到这两种协议,因为它们被浏览器视为两个不同的域:

<link rel="preconnect" href="http://www.example.com" />
<link rel="preconnect" href="https://www.example.com" />

如果您想走得更远,我还建议对dns-prefetch当前无法处理的浏览器使用 , preconnect。所以它看起来像:

<link rel="preconnect" href="http://www.example.com" />
<link rel="dns-prefetch" href="http://www.example.com" />
<link rel="preconnect" href="https://www.example.com" />
<link rel="dns-prefetch" href="https://www.example.com" />
于 2016-11-17T13:14:52.457 回答