我们能否将HTTP 2服务器推送到其他CDN中的资产?

问题描述 投票:0回答:1

目前,我的角度应用程序的index.html文件是从tomcat服务器(Apache Coyete)生成的。 index.html文件包含指向我们自己的CDN的js,css和图像。示例:

<script src="https://mc1.mcdn.in/main.adjhf432hjh23k44.js" />

假设我要服务器推送“ https://mc1.mcdn.in/main.adjhf432hjh23k44.js”文件。服务器可以推送CDN链接吗?另外,有什么办法可以服务器推送与模式匹配的所有文件?例如main。{hash} .js polyfills。{hash} .js等

angular tomcat cdn http2
1个回答
0
投票

您只能从对资源域具有权威性的连接中推送项目。 From the HTTP/2 specification

客户端必须将服务器不具有权威性的PUSH_PROMISE视为流错误...类型为PROTOCOL_ERROR

因此,如果索引文件也通过CDN提供,则可以在该连接上推送静态资产。但是,如果将index.html从单独的域和IP地址提供给资产,则无法将其推送。

您可以使用preload resource hint来对项目(尤其是较晚发现的资源)进行优先级排序,考虑到HTTP / 2推送的complexities and browser support,许多项目建议将这些项目确定为四个优先级。

© www.soinside.com 2019 - 2024. All rights reserved.