Heroku Cedar, Rails 3.1rc6, маршрутизация поддоменов - PullRequest
3 голосов
/ 22 августа 2011

Локально, на Unicorn, моя настройка поддоменов работает нормально. Я следовал за субдоменом heroku документации к письму, а также за субдоменами Railscast . subdomain.lvh.me:3000 указывает на правильное место, а lvh.me:3000 указывает на корень, определенный в маршрутах. rb:

  root :to => "pages#home"

Однако в моем новом промежуточном развертывании в стеке Heroku Cedar, снова с использованием Unicorn, в то время как subdomain.mydomain.co.uk указывает на правильное место, mydomain.co.uk этого не делает. Вместо того, чтобы переходить на страницы # home в соответствии с файлом маршрутов, он попадает в контроллер books, что он должен делать только в том случае, если в URL есть поддомен, в соответствии с routs.rb:

constraints(Subdomain) do
match '/' => 'books#show'
end   

Мои настройки DNS соответствуют документам Heroku, а команда host возвращает то, что должно быть в документации. Есть идеи?

1 Ответ

1 голос
/ 18 февраля 2013

Добавьте псевдоним домена в subdomain.rb:

class Subdomain
  def self.matches?(request)
    request.subdomain.present? && request.subdomain != "www" && request.subdomain != "nameofmydomain" 
  end
end
...