为另一个域建立路由

时间:2020-04-29 13:51:02

标签: php symfony symfony4

我在本地服务器和生产服务器上都有一个站点。在本地站点上,它具有生产域domain1.com上的dom1域。 现在,我想向站点添加另一个控制器的域:

smth_dom2:
    resource: "@SmthBundle/Resources/config/routing.yml"
    host: "{domain}"
    requirements:
        domain: dom2|domain2.com

有dom2是本地服务器上的域,domain2.com正在生产中。全都正确。 但是现在,如果没有域定义,我将无法构建路由。

{{path ('smth_dom2')}}
模板中的

需要一个域。如果使用默认参数修改路由,则必须定义域:

smth_dom2:
    resource: "@SmthBundle/Resources/config/routing.yml"
    host: "{domain}"
    defaults: {domain: "dom2"}
    requirements:
        domain: dom2|domain2.com

如何在dom2和生产domain2.com上在本地服务器上构建路由?

1 个答案:

答案 0 :(得分:1)

更简单的方法是在您的路线上将域设置为dom2,然后从config/routes_prod.yaml覆盖域。

例如:

routes.yaml

smth_dom2:
    resource: "@SmthBundle/Resources/config/routing.yml"
    host: dom2

routes_prod.yaml

smth_dom2:
    resource: "@SmthBundle/Resources/config/routing.yml"
    host: domain2.com

请注意,子路由文件绝不能定义任何主机参数,否则父路由中的默认定义将被丢弃。