heroku上的通配符域

时间:2013-02-22 12:45:36

标签: ruby-on-rails heroku

如何在Heroku上使用通配符域?我的应用程序正在使用子域。

我关注了Heroku自定义域文章,并将*.mydomain.com映射到myapp.herokuapp.com。当我访问dev.mydomain.com时,它指向heroku应用程序,但在Heroku应用程序上,我无法找到子域。

简而言之,我想在heroku上使用子域,例如dev.myapp.herokuapp.com。有什么建议吗?

1 个答案:

答案 0 :(得分:1)

Heroku上的通配符设置指示Heroku将对给定域的子域的任何请求指向您的应用程序。

但是这里停止了Heroku的责任。然后,您的应用程序必须能够在应用程序级别处理此类请求。

在Rails中,您可以使用控制器中的request对象检查请求详细信息。您可以使用request.subdomain访问特定的子域。

因此,例如,如果您添加了*.example.com并且有人访问了foo.example.com,则请求对象将使用以下值进行响应:

request.host
# => foo.example.com
request.subdomain
# => foo

现在,您有责任根据您的目标在您的应用中使用此类信息。