DNS设置:OpenShift和CloudFlare / rhcloud

8
我正在尝试在CloudFlare上设置DNS转发到我的Openshift页面(the-domain.rhcloud.com)。但是,当我进入CloudFlare的DNS设置并尝试更改A设置时,我收到了这个错误:“You entered 'the-domain.rhcloud.com' which is not a valid IP address.”。
它似乎要求输入一个静态IP地址。其他托管服务提供可以用于DNS设置的数字IP地址,但我在rhcloud / OpenShift上找不到任何类似的内容。
如何在rhcloud OpenShift上查找我的域名的IP地址?当转发到rhcloud主机时,基本的DNS设置应该是什么样子的?
我应该使用注册商默认的A和AAAA设置吗?
2个回答

10

在使用Openshift/Heroku等服务时,有点不寻常的是,在您的DNS中没有与您的站点或应用程序对应的单个A记录。这是因为该服务上不存在与您的站点或应用程序相应的单个A记录。

如果您已经在您的注册机构使用Cloudflare的名称服务器设置了域名(您需要这样做!),则在注册机构无需进行其他任何操作。

您需要在Cloudlare上为站点/应用程序设置一个(或多个)CNAME(如果它是一个网站,您可能需要每个域名各自设置一个,例如example.com和www.example.com)。

假设您确实需要“裸”域和www版本,则应执行以下操作:

Openshift

  1. 确保您已经设置了“裸”域和www子域的域名。

Cloudflare:

备份!

  • Cloudflare允许您导出DNS设置。在进行任何更改之前,请执行此操作。

裸域

  1. 转到DNS设置页面
  2. 在下拉选择器中选择CNAME
  3. 在第一个字段中输入the-domain
  4. 在第二个(“是别名”)字段中输入the-domain.rhcloud.com

www子域

  1. 重复上述步骤1-4,但在第3步中输入www
  2. 转到“页面规则”页面
  3. 添加一个新的“页面转发”规则,以任一方式http://the-domain.com/* 重定向到 http://www.the-domain.com/$1 或将http://www.the-domain.com/* 重定向到 http://the-domain.com/$1
  • 选择“301”作为重定向类型

  • 谢谢,我会尝试一下并告诉你结果。 - Matt Lemmon
    它能够到达Openshift,这意味着Cloudflare DNS部分正在工作。但是您所描述的错误意味着您在Openshift上没有正确设置域 - 请参见上文。对于该域的请求被正确地路由到了您的Openshift应用程序,但是Openshift无法识别请求中的域。如果您将别名“the-domain.com”添加到Openshift,然后访问“www.the-domain.com”,通常会发生这种情况。因此,请确保在Openshift上的域别名与您在Cloudflare的DNS设置中设置的域完全匹配。 - bhotel
    1
    如果域名前往/app,那么它肯定会到达Openshift。Web服务器通常会将它们不理解的请求重定向到默认域或其他奇怪的位置。当Openshift无法适当地路由请求时,就会发生/app子目录重定向。我熟悉的唯一原因是DNS CNAME和Openshift别名不匹配。如果您确定它们匹配,您需要提供更多信息--域名将是一个好的开始... - bhotel
    1
    顺便说一下,我从CloudFlare DNS设置中删除了所有A、AAAA和MX记录,这样唯一的规则就是CNAME mcchampions.com是mcchampion-garaje.rhcloud.com的别名,以及CNAME www是mcchampion-garaje.rhcloud.com的别名。我刚刚双重检查了rhcloud上的别名名称,简直不敢相信——少了一个字母。我刚刚更改了它,现在一切都正常了。感谢您的耐心和帮助,我非常感激。 - Matt Lemmon
    完美的答案,如果您在裸域中遇到了太多的重定向,请确保您在OpenShift中配置了裸域! - G. Führ
    显示剩余8条评论

    0

    如果您想让您的域名以https://www开头,请看一下下面对我有用的步骤。

    假设我们要为此域名example.org配置Cloudflare和OpenShift。

    Cloudflare

    DNS页面

    我设置了两个记录:

    1. 类型:CNAME 名称:example.org :example-example.rhcloud.com(您应该看到此记录的CNAME平铺符号)

    2. 类型:CNAME 名称:www :example.org

    "页面规则"页面

    两个规则:

    1. http://www.example.org/* 设置:始终使用HTTPS

    2. example.org/* 设置:转发URL,301-永久重定向,https://www.example.org/$1

    OpenShift

    增加一个别名:

    • www.example.org

    网页内容由stack overflow 提供, 点击上面的
    可以查看英文原文,
    原文链接