【问题标题】:Symfony2 Routing for multiple clients多个客户端的 Symfony2 路由
【发布时间】:2016-05-01 20:20:52
【问题描述】:

我是 symfony 的新手,但我相信它会帮助我更快地发展。

所以这是我的基本问题。我想开发一个可供多个客户使用的应用程序。他们都有自己的网址。像这样的:

http://example.com/customer1
http://example.com/customer2

我明白了,这很容易通过编辑 routing.yml 来完成 - 这是非常酷的东西

app:
    resource: "@AppBundle/Controller/"
    prefix:   /{customer}/
    type:     annotation

在 AppBundle 中,我可以在控制器中构建整个应用程序,symfony 为我提供了框架。它将有一些编辑路线、管理路线等等。

但是如果任何用户调用http://example.com/unkownCustomer/someSite

如果定义了 someSite 路由,它会导致问题,只是因为没有有效的客户。当然我可以在每个动作上处理它,但这不是很聪明。我正在考虑从 symfony 扩展 Controller 类,以添加一些基本功能,例如扩展渲染方法以添加一些基本内容,例如客户设置,例如客户名称以将其自动添加到 twig 的参数数组中,我没有不必在每个控制器中都明确地做到这一点。我认为还必须更普遍地实现一些安全功能,即具有角色的经过身份验证的用户在其他客户站点上没有此角色或未经过身份验证。

但是在运行针对路由的操作功能之前,如何注入一些代码呢?还有一个大问题 - 正确的方法应该怎么做?在 symfony 中做这件事必须改变主意吗?

PS:对不起,我的英语很差-希望你能理解我的问题。

【问题讨论】:

  • 您可以使用像 Symfony 这样的框架以多种方式完成一项任务,并且每个开发人员可以有不同的方法(通常基于自己的意见)。 Symfony 是一个由许多解耦组件组成的模块化框架,要知道如何使用它(以及了解 Symfony 的工作原理),您首先需要更深入地研究解释如何使用每个组件的每个功能的相关文档。然后,您将能够决定使用哪些组件来满足您应用的任何需求(并以更好的方式自行解决此类问题)。
  • 您好 gp_sflover,感谢您的回复...我认为阅读本书中的基本内容就足够了。你有什么建议吗?我阅读了一些可能对我的问题有用的事件。

标签: symfony url-routing multiple-instances


【解决方案1】:

在过去的 2 天里我学到了很多东西 - 该视频以一种非常好的方式完全回答了我的问题!

https://knpuniversity.com/screencast/question-answer-day/symfony2-dynamic-subdomains

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-08-10
    • 1970-01-01
    • 2014-09-05
    • 2020-04-11
    • 2015-12-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多