使用自定义域在cloudfoundry上托管war文件? (或替代品)

时间:2013-08-09 12:03:29

标签: java web-applications cloudfoundry

说,我在一个war文件中有一个Java Web应用程序,该文件在URL mycoolapp.cfapps.io的cloudfoundry上托管,完美运行。我现在需要在自定义域mycoolapp.com上托管它并且我已经购买了域名。

  1. 在我自己的域上托管它的流程是什么?我可以通过Cloudfoundry做到吗?
  2. 我的应用需要ssl。目前https://mycoolapp.cfapps.io有效。但我需要它来处理我的自定义域。这涉及到什么? (我想我需要获得我的域名证书,但下一步是什么?)
  3. 在应用程序中,一些机密信息嵌入在URL中(这不能更改),因此我还需要确保提供程序无法知道访问的URL(除了基本URL)。可以这样做吗?如果没有,有哪些替代方案?

1 个答案:

答案 0 :(得分:3)

  1. 可以通过为您的应用创建CNAME record来完成(请参阅Azure示例here)。不幸的是,Cloud Foudry(CF)似乎还不支持它。据我了解,这是由于CF路由器通过解析URL并根据主机名(在您的情况下为mycoolapp)确定路由来确定确切的虚拟机(以及IP)。理想情况下,CF中会有一个界面,您可以为您的应用注册所有CNAME别名(已针对Azure websites实施)

  2. 如果启用CNAME记录,它也适用于HTTPS,因为它基本上解析了IP地址。肯定会有一个界面供您上传域名证书。这导致下面提到的关于SSL终止的问题。但是,据我所知,CF还没有支持它。

  3. 这是对CF的run.pivotal.io部署的内部结构的一个问题。从概念上讲,HTTPS将成为encrypts URL parameters的诀窍。但是,我认为SSL terminates on the router(作为证书是为* .cfapps.io颁发的 - 所有应用程序的单一证书 - 您可以通过HTTPS在浏览器连接中检查它)。这可能意味着内部CF可以访问您请求的所有数据,并导致my question about SSL termination in CF,目前没有答案。 Hope CF将提供一种在处理请求的最终服务器上终止SSL的方法。

  4. <强>更新

    Cloud Foundry已经提出了自己的方式来支持自定义域名through using CloudFlare proxy。如果使用代理解密您的数据的事实对您来说是好的,则可以使用它。