子域约束(Rails 3)使本地服务器(瘦)SO SLOW

时间:2012-11-06 17:48:02

标签: ruby-on-rails-3 routing subdomain localhost thin

我最近在我的Rails路由文件中添加了一个子域约束

constraints(:subdomain => 'new') do
  devise_for :customers do 
    get "/customers/sign_up" => "registrations#new"
    post "/customers" => "registrations#create"
    put "/customers/:id" => "registrations#update"
  end
  match '/' => 'roxy#index'
  namespace :roxy, :path => '/' do
    resources :customers
    resources :surveys
  end
end 

为了在本地测试子域路由约束,我将此行添加到我的hosts文件中。

127.0.0.1       new.localhost.local

现在,我在我的浏览器中在URL new.localhost.local:3000上测试我的应用程序。加载每一页大约需要10到15秒,这非常慢。如果我删除了子域约束并且只是转到127.0.0.1:3000,那么一切都很快又快。

我做错了什么?我是Rails的新手,所以请告诉我是否有更好的方法在rails中进行子域路由,或者是否需要配置设置。

1 个答案:

答案 0 :(得分:5)

想出来。它与Rails或子域或瘦无关。事实证明,与其他unixy-things不同,OS X为mDNS功能保留了.local TLD。对于每个页面,DNS解析在加载我的应用程序之前超时。所以我只是将我的/ etc / hosts文件更改为

127.0.0.1    new.localhost.dev

现在一切都很好。

了解详情:http://www.justincarmony.com/blog/2011/07/27/mac-os-x-lion-etc-hosts-bugs-and-dns-resolution/