【问题标题】:Locally working with CNAMEs in multi-tenant apps在多租户应用程序中本地使用 CNAME
【发布时间】:2020-03-01 08:14:29
【问题描述】:
我有一个多租户应用程序,用户可以在其中获得一个工作正常的子域youraccount.myapp.com。我有一些客户希望能够拥有自己的域来重定向到子域。所以像 foobar.com --> youraccount.myapp.com 这样的东西。我很确定我的应用程序中的逻辑已关闭,但我不知道如何在 DNS CNAME 方面进行测试。我不想在没有看到它在本地工作的情况下启动此功能。
我觉得添加主机条目不会测试逻辑,但也许我错了?有谁知道如何测试这个?
【问题讨论】:
标签:
dns
multi-tenant
cname
【解决方案1】:
您不能将任何其他记录与 CNAME 一起使用。
由于一个“域名”,即父区域包含指向委托域的 NS 记录的“区域切割”,必须有一个 SOA 记录(可能还有它自己的 NS 副本记录,以及任何其他相关和必要的记录),它也不能有 CNAME。
因此,客户自己的域指向应用程序子域的唯一方法是让他们的域名也具有指向与 youraccount.myapp.com 记录指向的地址相同的 A 记录。
他们能做的最好的事情就是拥有自己的指向您的子域的子域,例如(使用您的示例名称):
app.foobar.com. IN CNAME youraccount.myapp.com.