Развертывание приложения rails 3.1 в подкаталоге - PullRequest
2 голосов
/ 17 декабря 2011

Я пытаюсь развернуть приложение rails 3.1.3 в подкаталоге на сервере: Apache (обратный прокси) => единорог (прослушивает localhost: 5000)

Проблема с url_helper. через переключатель --path в единороге я устанавливаю мой / subdir Это подобрано рельсами; DashboardController.config.relative_url_root дает мне этот subdir.

Но когда я использую что-то вроде 'members_path' на мой взгляд, это дает мне '/ members', а не '/ subdir / members'

что мне не хватает?

1 Ответ

0 голосов
/ 29 февраля 2012

У меня была точно такая же проблема.В моей настройке отсутствовали две вещи.

  1. У моего веб-сервера было избыточное правило переписывания, переписывающее /prefix/<controller> до /controller.
  2. КажетсяRails3-маршрутизация по умолчанию игнорирует relative_url_root.(Глупо ИМХО) В https://stackoverflow.com/a/5457484/103192 есть хороший совет, показывающий хитрость, чтобы заставить его работать снова.

В противном случае вы можете заключить оператор run в config.ruсо следующим блоком:

map ActionController::Base.config.relative_url_root || "/" do
  run FooApp::Application
end

Теперь у меня это работает так же, как хотелось бы, чтобы оно работало.

...