Сделал следующее на локальной машине. Поставил Passenger.
В итоге при попытке зайте как на адрес admin.example.com так и на динамический адрес foo.example.com выдает "Server not found".
nginx.confserver {
listen 80;
server_name www.example.com;
rewrite ^(.*) http://example.com$1 permanent;
}
server {
listen 80;
server_name example.com *.example.com;
root my/public;
rails_env development;
passenger_enabled on;
charset utf-8;
}
Hosts file
127.0.0.1 example.com
127.0.0.1 *.example.com
routes.rbconstraints :subdomain => 'admin' do
namespace :admin, path: '' do
root 'blogs#index'
end
end
get ':link', to: 'blogs#show', constraints: { subdomain: /.+/ }
в routes.rb :link это friendly_id