我目前正在开展一个网络项目,正在寻找有关预先连接到子资源的域的建议。
我的假设是理想情况下,应使用相同的协议从域中提供所有子资源,从而节省到服务器的往返。但是,在我正在使用的代码的某些区域中,某些资源通过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" />
答案 0 :(得分: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" />