Symfony 生成 cdn 友好资产 url

Symfony generate cdn friendly asset url

我有一个由 cdn(例如 akamai)提供服务的 symfony 应用程序,我在模板上生成资产 url:

{{ asset('myJs.js') }}

当我这样做时,我想生成一个 url 之类的(假设该站点由 www.example.com 提供服务):

www.example.com/myJs.js?v=321321312312

其中 v 参数获取部署版本以强制 cdn(例如 akamai 网络)缓存更新版本。动态生成v参数是不是好方法?

src="www.example.com/myJs.js?v={{ random() }}"

如果您想将散列附加到每个版本保持唯一的文件,您可以使用该文件的文件修改时间或散列。最好的方法可能是创建一个新的 Twig 函数 versionedAsset(),它使用 asset() 的输出并将此哈希附加到生成的 URL