From f7848b025fdb8015b2ac7992cb9a9d314f305e22 Mon Sep 17 00:00:00 2001 From: Frank West Date: Fri, 8 Jun 2018 08:38:39 -0700 Subject: [PATCH] Add rack-rewrite to handle redirects We are moving bulk edit to a different route and we want to be able to handle redirects on this route. Handling this at the rack level before the rails stack is the most performant way outside of rewrites on the web server itself. --- Gemfile | 1 + Gemfile.lock | 2 ++ config/initializers/rack_rewrite.rb | 7 +++++++ 3 files changed, 10 insertions(+) create mode 100644 config/initializers/rack_rewrite.rb diff --git a/Gemfile b/Gemfile index 1bafae9b50..962666d6b9 100644 --- a/Gemfile +++ b/Gemfile @@ -58,6 +58,7 @@ gem 'geocoder' gem 'gmaps4rails' gem 'spinjs-rails' gem 'rack-ssl', require: 'rack/ssl' +gem 'rack-rewrite' gem 'custom_error_message', github: 'jeremydurham/custom-err-msg' gem 'angularjs-file-upload-rails', '~> 1.1.6' gem 'roadie-rails', '~> 1.0.3' diff --git a/Gemfile.lock b/Gemfile.lock index b96a2dad54..4c12c187b8 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -543,6 +543,7 @@ GEM rack (>= 0.4) rack-livereload (0.3.16) rack + rack-rewrite (1.5.1) rack-ssl (1.3.4) rack rack-test (0.6.3) @@ -775,6 +776,7 @@ DEPENDENCIES pry-byebug (>= 3.4.3) rabl rack-livereload + rack-rewrite rack-ssl rails (~> 3.2.22) rails-i18n (~> 3.0.0) diff --git a/config/initializers/rack_rewrite.rb b/config/initializers/rack_rewrite.rb new file mode 100644 index 0000000000..98c93a79f3 --- /dev/null +++ b/config/initializers/rack_rewrite.rb @@ -0,0 +1,7 @@ +module Openfoodnetwork + class Application < Rails::Application + config.middleware.insert_before(Rack::Lock, Rack::Rewrite) do + r301 '/admin/products/bulk_edit', '/admin/products' # TODO: Date added 15/06/2018 + end + end +end