На моем общедоступном сервере Apache2 доступ к моему приложению Rails 3 осуществляется через подчиненный URI, например
https://www.myserver.com/myapp/controller...
этот сервер настроен для обратного прокси-сервера на другой сервер Apache2, на котором размещено приложение Rails через Passenger:
http://intranet.server.com/myapp
В моих настройках VirtualHost для сервера интрасети у меня есть
SetEnv RAILS_RELATIVE_URL_ROOT "/myapp"
В моем файле config / environment / production.rb я раскомментировал строку
config.log_level = :debug
Таким образом, самый первый метод выполнения в моем приложении выдает:
logger.debug { "The environment variable RAILS_RELATIVE_URL_ROOT is presently #{ENV['RAILS_RELATIVE_URL_ROOT']}" }
и, конечно же, в файле журнала производства вы видите:
The environment variable RAILS_RELATIVE_URL_ROOT is presently /myapp
Тем не менее, следующая строка в журнале, что, очевидно, то, что браузер идет:
Redirected to https://www.myserver.com/controller/action
Я узнал об этой переменной среды здесь, в Stackoverflow, так что это один человек, для которого он работал, но один другой сказал, что не сделал этого, а другой сказал, что сделал. Итак, с моим опытом, мы сейчас в галстуке. Я что-то упустил?