2012-05-15 8 views
0

У меня есть приложение для Rails. Теперь я хотел бы перенаправить все из них на субдомен dev.mydomain.com.Как сопоставить все маршруты в поддомен в Rails

Например, текущий путь mydomain.com/users/1 должен стать dev.mydomain.com/users/1. Все ссылки на моих страницах также должны работать.

Как мне это сделать?

Большое спасибо.

Редактировать: причина, по которой я хочу сделать это, - это то, что я хочу скрыть свое приложение от посетителей и перенаправить их на другую целевую страницу.

+0

Вы испортили термины path и url. Что вы хотите, чтобы попытаться архивировать? http://apidock.com/rails/ActionView/Helpers/UrlHelper/url_for, проверьте параметр: host – astropanic

+0

Привет, причина, по которой я хочу это сделать, - это то, что я хочу скрыть свое приложение от посетителей и перенаправить их на другая целевая страница. – AdamNYC

+0

Являются ли 'dev.myomain.com' и' mydomain.com' отдельные рельсовые приложения? Каков ваш стек развертывания? (Apache, nginx, тонкий, webrick?). – Matt

ответ

0

Вы можете сделать следующее

  1. Создайте файл в конфигурации/Lib каталога под названием subdomain.rb затем добавьте в него

    class Subdomain 
        def self.matches?(request) 
         if request.subdomain == "www" || request.subdomain.blank? || request.subdomain.empty? || request.subdomain.nil? 
          false 
         else 
          true 
         end 
        end 
    end 
    

Затем в routes.rb вы можете это сделать

require 'subdomain' 

    DemoApp::Application.routes.draw do 

     constraints(Subdomain) do 
      constraints(:subdomain => 'dev') do 
       resources :users 
       root :to => "someother#page" 
      end 
     end 

     root :to => "default#index" 

     # and any other routes you would like to expose to www or no subdomain. 
    end 

Чтобы запустить мой приложения Я использую pow.cx, и я бы порекомендовал то же самое.

Смежные вопросы