强制Rails Heroku App从subdomain.herokuapp.com到顶点域?

Dan*_*her 5 ruby-on-rails heroku

将subdomain.herokuapp.com发送到应用程序的顶点域的正确方法是什么?这是为了避免具有相同内容的多个域名.

Dan*_*her 7

https://github.com/tylerhunt/rack-canonical-host似乎是完美的选择.对于有同样问题的其他人,请留在这里.


man*_*noj 6

引自https://devcenter.heroku.com/articles/custom-domains

即使您已设置自定义域,域myapp.herokuapp.com也将始终保持活动状态.如果您希望用户专门使用自定义域,则应发送HTTP状态301 Moved Permanently以告知Web浏览器使用自定义域.主机HTTP请求标头字段将显示用户尝试访问的域; 如果该字段是myapp.herokuapp.com,则发送重定向.

您可以使用ApplicationController中的before过滤器或使用rails routing中的约束将请求重定向到"subdomain.herokuapp.com".