如何使用heroku在同一域上运行两个不同的应用程序

Gre*_*gPK 5 ruby web-hosting ruby-on-rails heroku

我在 上有一个 Rails 应用程序example.com,它是在该域下运行的 Heroku 应用程序。然而,营销团队希望使用更动态的东西来更改主登陆页面上的材料。

因此我的问题是:

  • 我可以在同一域下运行与 Rails 不同的系统吗(example.com是一个系统,example.com/*是旧的 Rails 应用程序)
  • 这两个系统可以在同一个 Ruby 应用程序中吗?
  • 这两个系统可以使用不同的语言吗(不同的 Heroku 应用程序)

我已经在自定义服务器上完成了这些类型的设置。只是想知道是否可以在 Heroku 上做到这一点。

Sim*_*tti 2

不,你不能。Heroku 允许将零个或多个自定义域关联到同一应用程序,但不可能将两个应用程序与同一域关联并以某种方式分割路由。

在同一保护伞下共存两个不同的应用程序也非常困难。您可以在同一个项目中创建更多基于机架的应用程序,并将它们安装在同一个 Rails 路由器下(例如,您可以将 Sinatra 或 Lotus 应用程序安装在 Rails 项目中的特定路径上)。

您不能用两种不同的语言编写应用程序,因为不可能使用两种不同的构建包构建单个 Heroku 应用程序。嗯,理论上,您可以编写自己的构建包......但这并不简单。

唯一可行的解​​决方案是在同一个 Rails 或 Rack 路由器下安装更多基于 Rack 的应用程序(您可以有 N 个 Rack 应用程序,1 个 Rails 和 N 个 Rack,但几乎不可能有 N 个 Rails)。