diff options
| author | Ben Scheirman <ben@scheirman.com> | 2011-10-08 18:38:02 -0500 | 
|---|---|---|
| committer | Ben Scheirman <ben@scheirman.com> | 2011-10-08 18:38:02 -0500 | 
| commit | d68f27e9b184a8e7e4ce71db11874a6b36ea1edc (patch) | |
| tree | 6fd5706cf5780adceb2b392b1d24bdea767a237e /actionpack/lib | |
| parent | f655895e87c8e013caac649986510eff4d3b03d9 (diff) | |
| download | rails-d68f27e9b184a8e7e4ce71db11874a6b36ea1edc.tar.gz rails-d68f27e9b184a8e7e4ce71db11874a6b36ea1edc.tar.bz2 rails-d68f27e9b184a8e7e4ce71db11874a6b36ea1edc.zip  | |
accept optional :host parameter to force_ssl
Diffstat (limited to 'actionpack/lib')
| -rw-r--r-- | actionpack/lib/action_controller/metal/force_ssl.rb | 7 | 
1 files changed, 5 insertions, 2 deletions
diff --git a/actionpack/lib/action_controller/metal/force_ssl.rb b/actionpack/lib/action_controller/metal/force_ssl.rb index ed693c5967..0fd42f9d8a 100644 --- a/actionpack/lib/action_controller/metal/force_ssl.rb +++ b/actionpack/lib/action_controller/metal/force_ssl.rb @@ -24,12 +24,15 @@ module ActionController        # * <tt>only</tt>   - The callback should be run only for this action        # * <tt>except<tt>  - The callback should be run for all actions except this action        def force_ssl(options = {}) +        host = options.delete(:host)          before_filter(options) do            if !request.ssl? && !Rails.env.development? -            redirect_to :protocol => 'https://', :status => :moved_permanently +            redirect_options = {:protocol => 'https://', :status => :moved_permanently} +            redirect_options.merge!(:host => host) if host +            redirect_to redirect_options            end          end        end      end    end -end
\ No newline at end of file +end  | 
