客户端 cname 指向我在 cloudflare 上的域
Posted
技术标签:
【中文标题】客户端 cname 指向我在 cloudflare 上的域【英文标题】:Client cname pointing to my domain on cloudflare 【发布时间】:2017-09-19 03:36:30 【问题描述】:我们的一个客户拥有 client.com
域我们的应用程序位于 superapp.mycompany.com
我们希望客户端能够通过他们自己的子域访问我们的应用程序,例如:superapp.client.com。
通常我们只会告诉客户端为 superapp 添加一个 cname 并将其指向 superapp.mycompany.com。然后在我们的服务器 (IIS) 上,我们将他们的域绑定到我们的应用程序,一切都会按预期工作。
但是,当我们的 mycompany.com 域通过 cloudflare 管理时,我们无法复制此功能。
当我们导航到 superapp.client.com 时,我们会看到以下错误页面:
错误 1001
发生了什么?
您在 Cloudflare 网络上的网站 (superapp.client.com) 上请求了一个页面。 Cloudflare 当前无法解析您请求的域 (superapp.client.com)。
有什么方法可以以这种方式使用 Cloudflare?这似乎是为支持自定义域的多租户应用程序设置的非常标准的设置。
我们不需要 Cloudfront 为这些客户端域提供的所有保护,但我们希望将 Cloudfront 名称服务器用于外部应用程序(主要用于在我们迁移服务器时快速切换 DNS 记录等)。
感谢任何帮助。
【问题讨论】:
我们面临同样的挑战。如果您在这里找到解决方案,您能分享一下吗?您最终是否需要离开 Cloudflare for DNS? 我们放弃了这一点,我们设法通过在 cloudflare 上注册客户地址然后不进行验证来使基础工作正常进行,但我不相信生产中的这种设置。即使这样,SSL 也是不行的,所以我们继续前进。我不认为 cloudflare 是为我们这个职位的用户而设计的。从未找到好的解决方案,我们现在只是使用我们的沼泽标准 DNS 提供商(123-reg)。 @Ross 如果你仍然对这个问题感兴趣,我已经添加了一个解决方案。 【参考方案1】:我希望现在还为时不晚。但只是找到了一种方法。 您只需将客户的域(在 Cloudflare 中添加站点)添加到您的帐户。
您无需更改客户端域的 NS。因此,在您的 Cloudflare 面板中,此域将显示为“等待域名服务器更新”。
下一步是将 CName 记录添加到此域。
虽然客户端域的NS没有改成CF,但是CF有一个查找记录作为它的CName。
希望对你有帮助。
【讨论】:
谢谢,看起来有点像 hack,但效果很好。 :) 你知道它是否还在工作吗?此解决方案仍然出现 1001 错误。 @MathieuFerre 我知道你的问题是几个月前的问题,但解决方案对我们有用。您必须转到 Cloudflare 中的客户端域(显示“待定名称服务器更新”的域)——在上面的示例中为“client.com”——并设置指向 superapp.mycompany 的 CNAME 记录 superapp.client.com .com 这个变通办法似乎不再起作用了。【参考方案2】:以防万一有人遇到和我一样的问题。这是答案。简而言之,不,那是行不通的。
由于 Cloudflare 是 Cloudflare 上域的反向代理,因此域(不在 Cloudflare 上)的 CNAME 重定向不知道将流量发送到哪里。
参考:https://support.cloudflare.com/hc/en-us/articles/360017421192-Cloudflare-DNS-FAQ#CloudflareDNSFAQ-CanICNAMEadomainnotonCloudflaretoadomainthatisonCloudflare
【讨论】:
我无法访问该链接,我收到“您无权访问此页面”消息(即使在登录后)。【参考方案3】:如果您不需要 CDN 优势,您仍然可以使用 Cloudflare 域名服务器来管理您的 DNS 区域并保留您当前的配置。只需确保您区域中目标子域的 CDN 已停用(在您的情况下为 superapp.mycompany.com
)。
您可以通过查看每个 DNS 条目右侧的云图标来判断 CDN 是否已为子域激活或停用:如果云为橙色,则 CDN 处于活动状态,如果为灰色,则未激活。
Cloudflare 还在其 CDN 基础架构中支持外部 CNAME 解析,但它仅适用于其企业客户:https://support.cloudflare.com/hc/en-us/articles/217371987-Managed-CNAME
【讨论】:
以上是关于客户端 cname 指向我在 cloudflare 上的域的主要内容,如果未能解决你的问题,请参考以下文章
使用 cloudflare 将 CNAME 分配给我在亚马逊 S3 中的静态网站存储桶
如何对 Amazon API Gateway 终端节点进行 CNAME