我在我的 Padrino配置中使用子域。我在 AWS Route 53 中创建了多个 A 记录,以路由到 api.myapp.com 和 admin.myapp.com、myapp.com、www.myapp.com 等内容。这按预期工作。这是我的配置:
Padrino.mount('MyApp::App', :app_file => Padrino.root('app/app.rb')).host('api.myapp.com')
Padrino.mount('MyApp::Manager', :app_file => Padrino.root('manager/app.rb')).host('manager.myapp.com')
Padrino.mount("MyApp::Admin", :app_file => File.expand_path('../../admin/app.rb', __FILE__)).host("admin.myapp.com")
Padrino.mount('MyApp::Web', :app_file => Padrino.root('web/app.rb')).to('/')
出于这个问题的目的,我已将真实名称替换为“myapp”。问题是当我尝试在我的本地主机上访问这些子域时。它一直路由到 web/app.rb(它只是在'/')。我试着改变我/etc/hosts
的:
127.0.0.1 localhost
127.0.0.1 manager.myapp.com
127.0.0.1 api.myapp.com
127.0.0.1 admin.myapp.com
然后,当我尝试点击时manager.myapp.com:3000
,它会路由到作为根域 (MyApp::Web) 服务的内容。为什么会这样?