【问题标题】:Subdomains not working on local rails env子域不适用于本地 rails env
【发布时间】:2015-02-07 09:29:55
【问题描述】:

我目前在开发 Ruby on Rails 应用程序时遇到了一个主要问题。我以前从未使用过子域,但由于这个项目需要这样做。


我通过scope 添加了每个子域约束,但路由不起作用。这是我的routes.rb

scope module: :frontend, subdomain: ':company_id' do
  resources :RESOURCE_NAME do
    scope module: 'MODULE_NAME' do
      [...] # Some simple routes
    end
  end
  [...]
end

所以,我跳过了这些路线,因为它们并不重要,它们只是简单的 getpost 东西。

现在,问题是,每次我调用 *_path 方法时,我都没有重定向到子域(从那时起,lvh.me 一切正常)。当我直接访问它们时,每个子域(我还有更多)都在工作,而且当我访问主页时(http://lvh.me:3000/)。子域范围 launchpad 显示给我,而不是我在 routes.rb 中指定的直接根。

现在我在问,如何解决这个问题。

【问题讨论】:

    标签: ruby-on-rails ruby ruby-on-rails-3 routing routes


    【解决方案1】:

    你可以去http://moo.lvh.me:3000/

    在您的控制器中简单地执行以下操作

    unless request.subdomains.any?
       redirect_to subdomain: 'www'
    else
       ...
       # there is no subdomain
    end
    

    【讨论】:

    • 谢谢,但如果我不想使用 any 子域?
    • 那么你可以忽略它。或将您的代码放在其他区域。
    猜你喜欢
    • 2015-10-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-28
    • 2015-08-13
    • 2015-07-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多