我刚刚将Spring Boot / VueJS应用程序推送到Pivotal Cloud Foundry,并想知道我是如何更改网站的URL的?
当我推送应用程序时,他们给了我一个http://crdeckhelper.cfapps.io/的URL
我去了godaddy,买了一个crwardecks.com域名
如何在crwardecks.com上运行我的应用程序?
我目前让godaddy将此人重新路由到云代工厂为我生成的URL,但这不是我想要的行为。
我已经阅读了关于Pivotal的文档但由于某种原因它让我感到困惑。我也在网上搜索过这个,但是找不到好的资源。
你需要做几件事。
cf create-domain
。
https://docs.run.pivotal.io/devguide/deploy-apps/routes-domains.html#private-domainscf map-route <app> <domain> ...
。
https://docs.run.pivotal.io/devguide/deploy-apps/routes-domains.html#map-route此时,您将在CF中设置域和路由,但没有任何内容向CF发送流量。
要将流量发送到CF,您需要调整DNS记录。同样,有几个选择。
CNAME: www.example.com -> crdeckhelper.cfapps.io
。CNAME: *.example.com -> *.cfapps.io
(或者你可以使用一些子域,比如* .sub.cfapps.io)。两者都描述更多here。此外,cfapps.io
是Pivotal Web Services的一部分。如果您使用其他提供商,则您的共享域名将有所不同。
此时,您应该将流量路由到CF,CF应该将流量路由到您的特定应用。完成后您可以停止阅读,除非您尝试将根域映射到您的应用。
根域(即example.com
,而不是www.example.com
)有一个边缘情况,因为DNS CNAME记录不适用于根域。某些DNS提供程序支持ALIAS或ANAME记录,其作用类似于根域的CNAME记录。如果您的提供商有,请尝试一下(有关如何使用的说明,请参阅DNS提供商的文档)。如果没有,请查看您的提供商是否支持URL转发。许多DNS提供商会自动将根域上的HTTP流量重定向到您指定的子域,如example.com -> HTTP 302 -> www.example.com
。
有关根域设置的更多信息,请参阅以下链接中的Configuring DNS for Your Registered Root Domain
。
https://docs.run.pivotal.io/devguide/deploy-apps/routes-domains.html#domains-dns
作为最后的手段,您可以使用A记录,但是您需要非常小心,因为您的CF提供商可能没有静态公共IP,而是他们的IP可能会发生变化。如果您使用A记录和提供商的IP更改,流量将停止流向您的应用程序,您需要更新A记录以指向他们的新IP(您可以通过运行dig <app-dns>
或nslookup <app-dns>
来获取提供商的IP。如果您走这条路,确保你有监控,以便在IP变化时快速捕获。
希望有所帮助!