Symfony 2,如何处理多个域的路由?
Symfony 2, how do I handle routing for multiple domains?
我有一个网站,任何人都可以使用我们的子域创建自己的网站,他们也可以使用自己的自定义域。
user_site:
resource: "routing_user_site.yml"
host: "{subdomain}.{domain}"
requirements:
domain: %domain%
defaults:
domain: %domain%
# Our Site
site:
host: %domain%
resource: "routing_our_site.yml"
prefix: /
以上路由工作正常,但我不确定如何重定向其他域,这不是我们路由 routing_user_site.yml 文件
的主域
我已经添加了这个,但是没有用
custom_site:
host: "{domain}"
resource: "routing_user_site.yml"
prefix: /
requirements:
domain: !(%domain%)
在 Symfony2 中,路由的顺序非常重要。如果一个路由不匹配,那么框架将测试下一个。
这意味着,在您的情况下,您不必执行 !(%domain%)
,而只是设置规则而不需要捕获所有其他路由。
user_site:
[...]
site:
[...]
custom_site:
resource: "routing_user_site.yml"
prefix: /
如果请求未被 user_site 或 site 捕获,它将被 捕获custom_site;正如 user_site 和 site 所建议的那样,custom_site 将匹配用户的自己的域(或者至少是与您的 %domain% 不同的域)。
我有一个网站,任何人都可以使用我们的子域创建自己的网站,他们也可以使用自己的自定义域。
user_site:
resource: "routing_user_site.yml"
host: "{subdomain}.{domain}"
requirements:
domain: %domain%
defaults:
domain: %domain%
# Our Site
site:
host: %domain%
resource: "routing_our_site.yml"
prefix: /
以上路由工作正常,但我不确定如何重定向其他域,这不是我们路由 routing_user_site.yml 文件
的主域我已经添加了这个,但是没有用
custom_site:
host: "{domain}"
resource: "routing_user_site.yml"
prefix: /
requirements:
domain: !(%domain%)
在 Symfony2 中,路由的顺序非常重要。如果一个路由不匹配,那么框架将测试下一个。
这意味着,在您的情况下,您不必执行 !(%domain%)
,而只是设置规则而不需要捕获所有其他路由。
user_site:
[...]
site:
[...]
custom_site:
resource: "routing_user_site.yml"
prefix: /
如果请求未被 user_site 或 site 捕获,它将被 捕获custom_site;正如 user_site 和 site 所建议的那样,custom_site 将匹配用户的自己的域(或者至少是与您的 %domain% 不同的域)。