使用一个CDN
编辑该页面使用一个CDN
你部署一个CDN吗?太棒了:)一旦你确保你的文件上传到了CDN,安可的配置:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
/ / webpack.config。js / /……安可.setOutputPath(公共/构建/)/ /在开发模式中,不使用CDN .setPublicPath(' /构建');/ /……;+如果(Encore.isProduction ()) {+ Encore.setPublicPath (“https://my-cool-app.com.global.prod.fastly.net”);++ / /保证钥匙清单。json是* *+ / /构建/前缀+ / /(如。“构建/仪表盘。js”:“https://my-cool-app.com.global.prod.fastly.net/dashboard.js”)+ Encore.setManifestKeyPrefix(“构建/”);+}
就是这样!在内部,Webpack现在知道从你的CDN负载资产——例如https://my-cool-app.com.global.prod.fastly.net/dashboard.js
。
请注意
它仍然是你的责任CDN上把你的资产——例如通过上传或使用“起源”,你的CDN拉资产直接从您的web服务器。
你做需要确保脚本
和链接
标签您还包括页面上使用CDN。幸运的是,entrypoints.json路径更新包括CDN的完整的URL。
当部署一个CDN的子目录,您必须添加你的URL的路径结束时——如。Encore.setPublicPath (“https://my-cool-app.com.global.prod.fastly.net/awesome-website”)
将生成资产urlhttps://my-cool-app.com.global.prod.fastly.net/awesome-website/dashboard.js
如果您使用的是Encore.enableIntegrityHashes ()
不是和你的CDN和域同源,你可能需要设置crossorigin
在你的webpack_encore选项。yaml配置匿名
或use-credentials
为了克服歌珥错误。
这项工作,包括代码示例,许可下Creative Commons冲锋队3.0许可证。