To set up Decko behind an Apache webserver, we recommend using Phusion Passenger. In general, you will follow the instructions for deploying a Rack-based Ruby application.

 

Following the above example, your apache config might look something like this:

 

<VirtualHost *:80>
  ...
  DocumentRoot /srv/mydeck/current/public
  <Directory /srv/mydeck/current/public>
          AllowOverride all
          Options -MultiViews
  </Directory>
</VirtualHost>

 

 You will also need to make sure that the apache user (usually www-data) has read access to config.ru and read/write access to your log, tmp, and file directories

 

 

Optimizing

 

The above should help you get Decko working, but you'll have to do a bit more to make it fast.

  1. memcache. This is vital for a high-performing deck.

    To configure Decko for memcache, add this to your Gemfile:
    gem 'dalli'
    and edit config/application.rb with the following:
    config.cache_store = :dalli_store, []
  2. mod_xsendfile. File and Image cards process permissions before sending the file.  This makes that fast.
  3. mod_expires. Makes use of decko's non-expiring assets so images, stylesheets, and javascript don't slow down page loads at all.
  4. You'll need to enable mod_headers so that the ht_access will work (Headers directives)