8

编辑 现在可以在 symfony 2.2 中执行此操作

PlatformFooBundle:
    resource: "@PlatformFooBundle/Resources/config/routing.php"
    domain: foo.testdomain.com

PlatformBarBundle:
    resource: "@PlatformBarBundle/Resources/config/routing.php"
    domain: bar.testdomain.com

PlatformBazBundle:
    resource: "@PlatformBazBundle/Resources/config/routing.php"
    domain: baz.testdomain.com

您也可以在域中使用参数

编辑

在将此标记为重复之前,请继续阅读

http://www.craftitonline.com/2011/08/symfony2-locale-on-subdomains-not-on-the-url-path/

我读过这篇文章,但它并不能帮助我做我想做的事情。

我有 3 个不同的应用程序在同一个域名上运行,具有单独的子域。目前,他们都在他们自己的 symfony 安装中运行,我想摆脱它。

foo.testdomain.com
bar.testdomain.com
baz.testdomain.com

每个都使用不同的捆绑包

PlatformFooBundle
PlatformBarBundle
PlatformBazBundle

他们每个人都有自己的路线定义。

基本上,我想要的是这个

PlatformFooBundle:
    resource: "@PlatformFooBundle/Resources/config/routing.php"
    subdomain: www|devwww

PlatformBarBundle:
    resource: "@PlatformBarBundle/Resources/config/routing.php"
    subdomain: bar|devbar

PlatformBazBundle:
    resource: "@PlatformBazBundle/Resources/config/routing.php"
    subdomain: baz|devbaz

我该怎么做呢?

4

2 回答 2

6

正在进行讨论以添加此功能。

于 2012-05-08T05:19:43.043 回答
1

看看ExperiumDomainedRoutingBundle,它对我来说效果很好。我没有添加 Bundle-wide 域路由(仅每个控制器使用注释),但我希望它也能工作。

例子:

/**
 * @Route("/", name="frontend_show", options = {"domain_pattern"="{username}.%base_domain%"})
 * @Route("/u/{username}", name="private_show")
 * @Template("SiteBundle:Frontend:show.html.twig")
 */
于 2012-05-16T12:23:50.673 回答