在许多SaaS Web应用程序(例如Atlassian JIRA)中,用户可以拥有专用的子域。例如,如果我的用户名是helloworld,那么在我登录Web应用程序后,我被重定向到helloworld.atlassian.net
如何在Spring Framework中实现它?
我是否必须为每个客户运行一个应用程序服务器实例? 但这种剂量似乎是最便宜的解决方案。 Spring是否有这样的功能,我可以根据用户名创建动态子域,在后端,只有一个应用服务器实例正在运行?
答案 0 :(得分:1)
创建一个自定义过滤器,用于解析整个URL并提取子域,然后检查用户是否在具有适当权限的适当域上。另外值得一提的是Nginx应该重定向" * .youdomain.com"因此,所有子域都不必存在于Nginx中,它们可以存在于数据库中,每个用户都有自己的唯一或可以连接多个sudomains,您的自定义过滤器会对每个请求进行检查。