Ruby 1.9.2 リファレンスマニュアル > ライブラリ一覧 > webrick/configライブラリ > WEBrick::Configモジュール

module WEBrick::Config

クラスの継承リスト: WEBrick::Config

Abstract

色々なクラスの設定のデフォルト値を提供するモジュールです。

定数

BasicAuth
DigestAuth
FileHandler
General

WEBrick::GenericServer の設定のデフォルト値を保持したハッシュです。

WEBrick::Config::General = {
  :ServerName     => Utils.getservername,
  :BindAddress    => nil,   # "0.0.0.0" or "::" or nil
  :Port           => nil,   # users MUST specifiy this!!
  :MaxClients     => 100,   # maximum number of the concurrent connections
  :ServerType     => nil,   # default: WEBrick::SimpleServer
  :Logger         => nil,   # default: WEBrick::Log.new
  :ServerSoftware => "WEBrick/#{WEBrick::VERSION} " +
                     "(Ruby/#{RUBY_VERSION}/#{RUBY_RELEASE_DATE})",
  :TempDir        => ENV['TMPDIR']||ENV['TMP']||ENV['TEMP']||'/tmp',
  :DoNotListen    => false,
  :StartCallback  => nil,
  :StopCallback   => nil,
  :AcceptCallback => nil,
  :DoNotReverseLookup => nil,
}
General [redefined by webrick/ssl]

WEBrick::Config::SSL の内容がマージされます。

HTTP [redefined by webrick/https]

WEBrick::Config::SSL の内容がマージされます。

HTTP

WEBrick::HTTPServer の設定のデフォルト値を保持したハッシュです。

HTTP = {
  :ServerName     => Utils.getservername,
  :BindAddress    => nil,   # "0.0.0.0" or "::" or nil
  :Port           => 80,
  :MaxClients     => 100,   # maximum number of the concurrent connections
  :ServerType     => nil,   # default: WEBrick::SimpleServer
  :Logger         => nil,   # default: WEBrick::Log.new
  :ServerSoftware => "WEBrick/#{WEBrick::VERSION} " +
                     "(Ruby/#{RUBY_VERSION}/#{RUBY_RELEASE_DATE})",
  :TempDir        => ENV['TMPDIR']||ENV['TMP']||ENV['TEMP']||'/tmp',
  :DoNotListen    => false,
  :StartCallback  => nil,
  :StopCallback   => nil,
  :AcceptCallback => nil,
  :DoNotReverseLookup => nil,

  :RequestTimeout => 30,
  :HTTPVersion    => HTTPVersion.new("1.1"),
  :AccessLog      => nil,
  :MimeTypes      => HTTPUtils::DefaultMimeTypes,
  :DirectoryIndex => ["index.html","index.htm","index.cgi","index.rhtml"],
  :DocumentRoot   => nil,
  :DocumentRootOptions => { :FancyIndexing => true },
  :RequestCallback => nil,
  :ServerAlias    => nil,

  :CGIInterpreter => nil,
  :CGIPathEnv     => nil,

  :Escape8bitURI  => false
}
LIBDIR

追加されるメソッド

FileHandler [added by webrick/httpservlet/filehandler]

WEBrick::HTTPServlet::FileHandler.newに与えるオプションの初期値。

FileHandler = {
  :NondisclosureName => [".ht*", "*~"],
  :FancyIndexing     => false,
  :HandlerTable      => {},
  :HandlerCallback   => nil,
  :DirectoryCallback => nil,
  :FileCallback      => nil,
  :UserDir           => "public_html",
  :AcceptableLanguages => []  # ["en", "ja", ... ]
}
:AcceptableLanguages

コンテンツの言語を選択するオプション。設定値は文字列の配列。

クライアントからのリクエストに含まれるAccept-Languageの内容がfrで、 かつ:AcceptableLanguagesには['ja', 'en']が設定されている場合、 WEBrick::HTTPServlet::FileHandlerは以下の順番でファイルを探す。 (1) index.html (2) index.html.fr (3) index.html.ja (4) index.html.en

:FancyIndexing

クライアントがディレクトリをリクエストしたが表示するファイルが無い場合の挙動を決める。 値は真偽値。

trueならば、代わりにファイル一覧を表示する。 falseならばエラー(403 Forbidden)となる。

:DirectoryCallback
:FileCallback
:HandlerCallback
:HandlerTable
:NonDisclosureName

インデックスに表示したくないファイルの指定。値は文字列の配列。 表示したくないファイルをワイルドカードで指定する。

:UserDir

ユーザ毎のドキュメントルートのディレクトリ名。値は文字列。

ユーザfooのホームディレクトリが/home/fooで、:UserDirにpublic_htmlを設定した場合、 クライアントから/~foo/index.htmlがリクエストされると/home/foo/public_html/index.htmlの内容を表示される。

この設定を有効にするには以下の条件が必要。

  • [[unknown:etc]]ライブラリが使える状態である。
  • 環境変数SCRIPT_NAMEが空(空文字列)である。
SSL [added by webrick/ssl]

以下のほとんどの項目はサーバが保持する OpenSSL::SSL::SSLContext オブジェクト を設定するためのものです。詳しくは OpenSSL::SSL::SSLContext を参照して下さい。

:ServerSoftware

サーバソフト名を設定する。デフォルトでは "WEBrick/VERSION (Ruby/VERSION/RELEASE_DATE) OpenSSL/VERSION"。

:SSLEnable

ssl を有効にするかどうかを設定する。 ruby 1.8.2 まではデフォルトで true。ruby 1.8.3 以降はデフォルトで false。

:SSLCertificate

サーバ証明書を設定します。OpenSSL::X509::Certificate オブジェクトです。 nil の場合、WEBrick は自己署名証明書を自動的に生成する。

:SSLPrivateKey

サーバの秘密鍵を設定します。OpenSSL::PKey::PKey の サブクラスのインスタンスです。

:SSLClientCA

サーバがクライアント証明書を要求する時にクライアントに送る CA のリスト。 OpenSSL::SSL::SSLContext#client_ca を参照。

:SSLExtraChainCert

証明書チェーン。所有している証明書からルート CA までの証明書のリスト。 OpenSSL::SSL::SSLContext#extra_chain_cert を参照。

:SSLCACertificateFile
:SSLCACertificatePath
:SSLCertificateStore
:SSLVerifyClient
:SSLVerifyDepth
:SSLVerifyCallback
:SSLTimeout
:SSLOptions
:SSLStartImmediately
:SSLCertName

自己署名証明書を作成する場合の証明書の CN を文字列で設定する。

:SSLCertComment

自己署名証明書を作成する場合の拡張領域の nsComment の値。 デフォルトでは "Generated by Ruby/OpenSSL"。

Methods

Classes