Раньше было легко до Rails 3.0: "thin --prefix = / foobar" - это все, что было нужно. Для тех, кто использует Passenger Phusion, есть RackBaseURI - но я использую Lighttpd + Thin, комбинацию, которая уже не так популярна.
Я попытался начать с "-R config.ru" и поместить "map '/ foobar' do ..." в config.rb, но это не решает проблемы с ресурсами, которые все еще связаны с " / "вместо. Я также попытался установить "config.assets.prefix = '/ foobar'", который создает правильные ссылки в HTML, но вызывает ошибки маршрутизации ("Нет совпадений с маршрутом [GET] /application.css" - нет "/ foobar").
Единственная комбинация, которую я нашел работающей до сих пор, это config.assets.prefix плюс область вокруг всех маршрутов. Это кажется грязным и потому, что это не СУХОЙ, и потому что (IMHO) развертывание в разных местах не должно требовать от вас редактировать route.rb. И, к сожалению, это решение не работает для производства, так как HTML будет содержать «/foobar/application.css» вместо «/foobar/assets/application.css".