Module | Rack::Handler
In: | lib/rack/handler.rb lib/rack/handler/lsws.rb lib/rack/handler/swiftiplied_mongrel.rb lib/rack/handler/evented_mongrel.rb lib/rack/handler/webrick.rb lib/rack/handler/thin.rb lib/rack/handler/scgi.rb lib/rack/handler/mongrel.rb lib/rack/handler/cgi.rb lib/rack/handler/fastcgi.rb

Handlers connect web servers with Rack.

Rack includes Handlers for Thin, WEBrick, FastCGI, CGI, SCGI and LiteSpeed.

Handlers usually are activated by calling `MyHandler.run(myapp)`. A second optional hash can be passed to include server-specific configuration.

### Methods

default get pick register try_require

### Classes and Modules

Class Rack::Handler::CGI
Class Rack::Handler::EventedMongrel
Class Rack::Handler::FastCGI
Class Rack::Handler::LSWS
Class Rack::Handler::Mongrel
Class Rack::Handler::SCGI
Class Rack::Handler::SwiftipliedMongrel
Class Rack::Handler::Thin
Class Rack::Handler::WEBrick

### Public Class methods

default(options = {})
get(server)
pick(server_names)

Select first available Rack handler given an `Array` of server names. Raises `LoadError` if no handler was found.

      > pick ['thin', 'webrick']
      => Rack::Handler::WEBrick

register(server, klass)
try_require(prefix, const_name)

Transforms server-name constants to their canonical form as filenames, then tries to require them but silences the LoadError if not found

Naming convention:

      Foo # => 'foo'
      FooBar # => 'foo_bar.rb'
      FooBAR # => 'foobar.rb'
      FOObar # => 'foobar.rb'
      FOOBAR # => 'foobar.rb'
      FooBarBaz # => 'foo_bar_baz.rb'

[Validate]