перенаправление с http://example.com на https://example.mysite.com

Этот вопрос задавался в различных перестановках, но я не нашел правильную комбинацию, которая отвечает на мой конкретный вопрос.

КонфигурацияRails 3.1 (что позволяет мне использоватьforce_ssl в моемApplicationController)Размещено на Heroku Cedar (поэтому я не могу коснуться промежуточного программного обеспечения)Мои SSL-сертификаты зарегистрированы дляsecure.example.com

Я уже добавилforce_ssl в мой ApplicationController, вот так:

# file: controllers/application_controller.rb
class ApplicationController < ActionController::Base
  protect_from_forgery
  force_ssl
end
Проблема

В настоящее время, если пользователь переходит кhttp://example.com, force_ssl переключается на SSL, но так как это НЕsecure.example.com, он представляет предупреждение о неподтвержденном сертификате безопасности, поскольку он использует сертификат Heroku по умолчанию.

(Я подтвердил, что переход кhttp://secure.example.com правильно перенаправляет наhttps://secure.example.com и использует надлежащий сертификат безопасности. Это хорошо.)

Вопрос

Как я заставляюhttp://www.example.com/anything а такжеhttp://example.com/anything перенаправить наhttp://secure.example.com/anything? (Я предполагаю, что force_ssl будет обрабатывать переход с http на https.) Поскольку я не могу коснуться промежуточного программного обеспечения (напомним, что это хостинг Heroku), япредполагать Я могу сделать что-то вроде:

# file: controllers/application_controller.rb
class ApplicationController < ActionController::Base
  protect_from_forgery
  force_ssl
  before_filter :force_secure_subdomain

private
  def force_secure_subdomain
    redirect_to(something...) unless request.ssl?
  end
end

... но я недостаточно ворчал redirect_to и объект запроса, чтобы знать, для чего писатьsomething..., (Я хочу быть уверен, что он обрабатывает параметры запроса и т. Д.)

Ответы на вопрос(2)

Ваш ответ на вопрос