Ответ 1
вы хотите использовать это в своем файле среды:
config.action_controller.relative_url_root = '/rails_app'
Источник: http://edgeguides.rubyonrails.org/configuring.html
Попытка настроить приложение Rails в подкаталоге. Мой сервер - Cherokee. У меня есть базовый URL: www.nonsense.com, который является блогом Wordpress, и я хочу настроить приложение для рельсов в www.nonsense.com/rails_app.
Быстрое сканирование google привело меня к использованию: ActionController:: AbstractRequest.relative_url_root = "/rails_app"
Однако, похоже, это было удалено в последних Rails. Любые идеи относительно эквивалента в Rails 2.3.8?
вы хотите использовать это в своем файле среды:
config.action_controller.relative_url_root = '/rails_app'
Источник: http://edgeguides.rubyonrails.org/configuring.html
Для Rails 4/5 вы можете установить это в application.rb
или production.rb
:
config.relative_url_root = "/app1"
Или просто установите эту переменную среды:
RAILS_RELATIVE_URL_ROOT='/app1'
Однако, я обнаружил, что это только префиксы пути к активам. URL-пути, созданные помощниками URL, не учитывают этот параметр.
Оказывается, есть ошибка, связанная с этим: https://github.com/rails/rails/issues/5122
Предполагается, что это исправлено, но я не нашел, что это так: https://github.com/rails/rails/pull/18775/files
Документация по этой функции не совсем понятна, как именно она должна работать:
http://edgeguides.rubyonrails.org/configuring.html#deploy-to-a-subdirectory-relative-url-root
Может быть, попробуйте вместо имен:
http://guides.rubyonrails.org/routing.html#controller-namespaces-and-routing
Этот ответ также может быть полезен:
Настройка приложения Rails 4 для производства в подкаталоге под Apache