我想在Symfony 3应用程序中实现以下功能。假设我有2个限制区域供用户和管理员使用。
用户应该能够访问user.mydomain.com上的区域,而管理员应该访问admin.mydomain.com。
我有一个问题,希望有人能回答。
两者都有一些相同的路由,如/ login,/ register和/ dashboard。
是否可以在一个应用程序中实现?
就像用户访问user.mydomain.com/login一样,他应该能够以用户身份登录而不能以管理员身份登录。
管理员访问admin.mydomain.com/login应该只能以管理员身份登录。
我希望它清楚我的意思,并且有人可以发布一些指向文档或教程或给出示例的链接。
非常感谢指示。
答案 0 :(得分:2)
我认为您正在寻找http://symfony.com/doc/current/routing/hostname_pattern.html
您还需要检查每个用户或管理员案例。然而,在登录并实际检查他们的角色之前,显然不可能知道用户是否是管理员,因此如果由我来决定只是进行一次公共登录(您可以在两个域上显示)并允许访问(重定向)登录后)基于角色到他们的主机名等价物。
此致
答案 1 :(得分:0)
您可以在路由中使用不同的路径/域,因此我尝试创建侦听器并将其(使用事件)连接到主请求
在这个监听器中,我会chceck谁被记录,并将其重定向到正确的路由
几年前我创建了监听器来改变路径ti图像缓存(liipimaginebundle),知道这不一样,但它可以给你提供想法
https://gist.github.com/poznet/842ae820a230ba982a66f854549b0e2b