Where do you put your Rack middleware files and requires?

As of Rails 3.2, Rack middleware belongs in the app/middleware directory.

It works “out-of-the-box” without any explicit require statements.

Quick example:

I’m using a middleware class called CanonicalHost which is implemented in app/middleware/canonical_host.rb. I’ve added the following line to production.rb (note that the middleware class is explicitly given, rather than as a quoted string, which works for any environment-specific config files):

config.middleware.use CanonicalHost, "example.com"

If you’re adding middleware to application.rb, you’ll need to include quotes, as per @mltsy’s comment.

config.middleware.use "CanonicalHost", "example.com"

Leave a Comment

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)