In production, redirect to hostname with the SSL certificate

This commit is contained in:
Rohan Mitchell
2013-10-14 10:44:14 +11:00
parent bf02dd0caa
commit 4b7fc8b5e4

View File

@@ -3,6 +3,7 @@ class ApplicationController < ActionController::Base
before_filter :load_data_for_menu
before_filter :load_data_for_sidebar
before_filter :require_certified_hostname
private
def load_data_for_menu
@@ -34,6 +35,17 @@ class ApplicationController < ActionController::Base
end
end
# There are several domains that point to the production server, but only one
# (vic.openfoodnetwork.org) that has the SSL certificate. Redirect all requests to this
# domain to avoid showing customers a scary invalid certificate error.
def require_certified_hostname
certified_host = "vic.openfoodnetwork.org"
if Rails.env.production? && request.host != certified_host
redirect_to "http://#{certified_host}#{request.fullpath}"
end
end
# All render calls within the block will be performed with the specified format
# Useful for rendering html within a JSON response, particularly if the specified