我有一个“这行得通吗?” 问题。
我正在构建一个多租户应用程序。将配置 DNS 和 Apache,以便多个子域指向该站点。
站点
1.example.com站点2.example.com 站点
3.example.com
ETC ...
我将使用 $request->getHost() 返回的值根据子域传递不同的内容。
对于大多数请求,我将从主机名派生和验证整数 site_id 值。这将在数据库查询中用于检索和交付适当的内容。
我还将使用 {% render url(route) %} 使用 twig 子模板,其中子模板路由的操作将根据主机提供自定义内容。它可能会呈现一个具有使用主机名构造的名称的唯一模板。
我希望用户能够在“站点”之间切换而无需再次登录。我可以将 PHP 会话 cookie 和 Symfony 的“记住我”cookie 的域设置为 .example.com(注意点)。
我已经用这个想法做了一些简单的测试,它似乎有效。有没有我忘记的问题或陷阱?我不想做没有真正支持的事情。我对缓存等事情有点紧张。Symfony 对我访问具有多个主机名的站点感到满意吗?
我启用了 Symfony 反向代理,尽管 app/cache/prod/http_cache 似乎总是为空,但它似乎仍然可以正常工作,所以我猜缓存并没有真正起作用。我猜那是一个不同的主题。我需要了解更多关于缓存的信息,但总的来说,Symfony 反向代理会对此感到满意吗?缓存是基于完整 URL 还是仅基于路由?
我知道有新的按主机名路由功能。我认为这对我没有用处,因为我希望无论主机如何都可以执行相同的操作方法。
我想我很好,但在我承诺之前,我真的很感激任何评论。
谢谢