【问题标题】:How to redirect custom sub domains to my wildcard subdomain?如何将自定义子域重定向到我的通配符子域?
【发布时间】:2021-11-22 22:35:17
【问题描述】:

用户可以使用我的 Angular 项目使用我的根域创建子域。因此,我们使用通配符子域来创建子域。我们是 nginx。现在,我们的要求是,如果用户想要一个自定义子域,那么他应该能够用我们的通配符子域指向他的自定义子域。我们如何才能做到这一点?

例如:用户有子域 user.abc.com,我们提供 *.xyz.com。 用户创建了一个子域 hello.xyz.com,现在他想将他的 user.abc.com 重定向到 hello.xyz.com。我们如何用 nginx 实现这个场景。

【问题讨论】:

    标签: nginx


    【解决方案1】:

    在你的 nginx 配置文件中,如果你提到server_name *.domain.com;,你的所有子域都应该指向同一个 Angular 项目。

    但是,请注意,您还需要为客户创建的指向服务器 IP 的子域创建名称服务器。

    例如,如果您使用 AWS DNS 服务 Route 53,那么无论何时客户创建新的子域,您都必须在路由 53 下创建相同的子域并将其指向应用程序服务器 IP

    【讨论】:

    • 感谢 Punith 的快速回复。在 nginx 中,我们已经添加了 server_name 并且我们能够将所有通配符子域重定向到 Angular 项目。只有当最终用户想要使用我们的通配符域配置他自己的子域时,才会出现问题。我们尝试使用 CNAME。但是没有用。此外,我们不想在 Route 53 下创建每个子域。还有其他替代方案,例如 CNAME 吗??
    • 那么你也可以尝试创建一条*.domain.com指向你的服务器IP的A记录。因此,客户使用请求的任何子域都会到达您的服务器,例如*.domain.com A server IP
    • 但是,如何将自定义(用户自己的)子域重定向到我们的服务器 IP
    • 由于 *.domain.com 指向服务器 IP ,因此任何自定义域请求都会到达服务器
    • 是的,您所说的完全正确。该自定义域请求仅发送到我们的 IP。但问题是在请求命中我们的 ip 之后,我们的 nginx 抛出 404 错误并将其重定向到默认的 404 页面。
    猜你喜欢
    • 2022-01-04
    • 2022-08-15
    • 2018-10-22
    • 2012-10-13
    • 1970-01-01
    • 2014-05-29
    • 2012-07-08
    • 2020-09-27
    • 1970-01-01
    相关资源
    最近更新 更多