我正在开发一个正在扩展的项目,需要支持多域和多语言。
我发现管理标准路由的方式并没有涵盖项目所需的有效方式。
我发现了这个:https://github.com/alexandresalome/multisite-bundle
它发现它很好但我看到了以下缺点: 1)捆绑没有太多运动 2)路由设置在Controller / annotation级别而不是yml文件,这使得项目难以维护。
您是否知道基于symfony2的任何捆绑/策略是否满足此需求?非常感谢!!!
答案 0 :(得分:0)
这不能解决问题。
这是我的情景:
我有一个参数,我设置了几个主机:landing_hosts,用“|”
分隔我有一些着陆,只对那些主机有效,路由:着陆
当请求到来时,我看不到任何方法动态设置当前主机的默认值=>主持人入场。
我被迫指定一个,即%domain%。这样做是因为有一个缓存文件appDevUrlGenerator.php是在第一次访问网站时创建的,或者运行命令app / cache cache:clear。
如果我作为host2访问目标网页,则在twig模板中创建的网址和路径将跟随hosts1而不是hosts2,这是无效的。
// parameters.yml
parameters:
landing_hosts: host1|host2
main_host: host1
// routing.yml
landings:
host: "{hosts}"
path: /
defaults: { _controller: FrontendBundle:Landings:index }
requirements:
hosts: %landing_hosts%
defaults:
hosts: %main_host%