我试图遵循create-react-app.dev的生产构建文档中的指导:
为了向您的用户提供最佳性能,最佳做法是为index.html以及build/static内的文件指定Cache-Control头。此标头允许您控制浏览器和CDN将缓存静态资源的时间长度。如果您不熟悉Cache-Control的作用,请参阅本文进行介绍。
对于您的build/static资产使用Cache-Control: max-age=31536000,并对其他所有内容使用Cache-Control: no-cache,这是一个安全有效的起点,可以确保您的用户的浏览器始终检查更新的index.html文件,并将所有build/static文件缓存一年。请注意,您可以安全地在build/static上使用一年到期,因为文件内容哈希值嵌入到文件名中。
正确的方法是在index.html中使用HTML头 - 例如像这样:
<meta http-equiv="Cache-Control" content="max-age: 31536000, no-cache, no-store, must-revalidate">
<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="Expires" content="0">
(参考:这个Stack Overflow回答和这个YouTube教程)
如果是这样,我如何按照文档建议设置“max-age = 31536000”来控制您的 build/static 资产,并为其他所有内容设置“Cache-Control:no-cache”?我不知道如何为不同的资产设置不同的控件。