Skip to content

redis-store/redis-actionpack

Repository files navigation

Redis stores for ActionPack

Gem Version Build Status Code Climate

redis-actionpack provides a session store for ActionPack, specifically for ActionDispatch. See the main redis-store readme for general guidelines.

For guidelines on using our underlying cache store, see the main redis-store readme.

For information on how to use this library in a Rails app, see the documentation for redis-rails.

If, for some reason, you're using ActionDispatch and not in a Rails app, read on to learn how to install/use this gem by itself!

Installation

# Gemfile
gem 'redis-actionpack'

Usage

If you are using redis-store with Rails, head on over to the redis-rails README to learn how to integrate this gem into your Rails application.

For standalone usage:

ActionController::Base.session_store = :redis_store,
  servers: %w(redis://localhost:6379/0/session),
  expire_after: 90.minutes,
  key: '_my_application_session',
  threadsafe: false,
  secure: true

A brief run-down of these options...

  • servers is an Array of Redis server URLs that we will attempt to find data from.
  • expire_after is the default TTL of session keys. This is also set as the expiry time of any cookies generated by the session store.
  • key is the name of the cookie on the client side
  • threadsafe is for applications that run on multiple instances. Set this to false if you want to disable the global mutex lock on session data. It's true by default, meaning the mutex will be enabled.
  • secure ensures HTTP cookies are transferred from server to client on a secure (HTTPS) connection

Running tests

gem install bundler
git clone git://github.com/redis-store/redis-actionpack.git
cd redis-actionpack
bundle install
bundle exec rake

If you are on Snow Leopard you have to run env ARCHFLAGS="-arch x86_64" bundle exec rake

Copyright

2009 - 2013 Luca Guidi - http://lucaguidi.com, released under the MIT license