这stackoverflow solution几乎回答了我的问题。但我想在 Twig
中生成 CDN url,而不仅仅是资源。我想为动态内容生成它们。所以我认为 Assetic 的调整不是值得关注的领域。
现在,我可以在 parameters.ini
中设置 CDN_url 并在我的 url 中使用它。我的代码看起来像这样:{{CDN_Url}}{{url('route',{'param1':'value'}}
..代码维护是我不喜欢的一个主要原因这个选项。然后你可以做一些事情,比如检查 /cdn/
的路由以生成 CDN url 和其他所有基于域的东西。我不必四处奔走改变很多变量。如果我想停止生成 CDN url。我可以只修改路由。因此,弄清楚是否有一个干净的解决方案可以带来很多好处。
如果还没有解决方案——我将如何开始扩展 {{ url() }}
功能,以便我可以像 path
和 网址
。
最佳答案
您可以在您通过以下方式链接的问题的帮助下完成
{{ asset(path('route',{'param1':'value'})) }}
如果您需要处理多个 CDN 域,您可以通过以下方式完成
在app/config.yml
# app/config.yml
#....
templating:
engines: ['twig']
packages:
cdn1:
base_urls: ["http://cdn1.domain.com"]
cdn2:
base_urls: ["http://cdn2.domain.com"]
然后在你的 Twig 模板文件中
{{ asset('path/of/file', 'cdn1')
或
{{ asset('path/of/file', 'cdn2')
关于php - Symfony2/ Twig : Generate Alternate Absolute URL Path for use with CDN?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9749088/