new(config = {}, default = WEBrick::Config::General) -> WEBrick::GenericServer
[permalink][rdoc]GenericServer オブジェクトを生成して返します。
サーバのホスト名を表す文字列を指定します。デフォルトの Utils.getservername は /etc/hostname に書かれている文字列です。
サーバのアドレスを指定します。デフォルトの nil や "0.0.0.0", "::" などを指定した場合は使用可能なすべてのネットワークインターフェースに対して listen を開始します。 socket/ホスト指定形式 を参照して下さい。
サーバのポートを指定します。socket/サービス指定形式を参照を参照して下さい。
クライアントの最大接続数を表す整数です。
サーバのタイプを表すクラスを指定します。指定するクラスはブロックを取るstartという名前のクラスメソッドを持つ必要があります。サーバは、startメソッドの中でクライアントからの応答待ちのループ処理を実行します。WEBrickは呼ばれたスレッド内で実行するWEBrick::SimpleServer と、子プロセスをforkしてデーモンとして実行するWEBrick::Daemon を提供します。また、Threadを指定するとサーバはスレッド内で実行されるためWEBrick::GenericServer#startは呼び出し直後に呼び出し元に制御を戻します。
ログをとるオブジェクト(Logger オブジェクト)を指定します。通常は WEBrick::Log のインスタンスを指定します。 WEBrick::Log.new(log_file, level) のように出力先とログレベルを設定することができます。 Logger オブジェクトに定義されているべきメソッドに関しては WEBrick::Log を参照して下さい。
サーバソフトウェア名を文字列で指定します。WEBrick::HTTPServer では Server ヘッダにこの値が出力されます。
true の場合、GenericServer オブジェクトを生成しただけでは listen を開始しません。
start 開始時に呼ばれる Proc オブジェクト。呼ばれる時に引数は特に与えられません。
サーバを stop した時に呼ばれる Proc オブジェクトを指定します。呼ばれる時に引数は特に与えられません。
クライアントからの接続を accept したときに呼ばれる Proc オブジェクトを指定します。クライアントと接続された TCPSocket オブジェクトを引数として呼ばれます。
true の場合、ホスト名への逆引きを行わなくなります。 BasicSocket#do_not_reverse_lookup も参照して下さい。
[SEE_ALSO] WEBrick::Config::General
new(config = {}, default = WEBrick::Config::General) -> WEBrick::GenericServer
[permalink][rdoc] [redefined by webrick/ssl]
GenericServer オブジェクトを生成して返します。
config で有効な項目が増えます。以下は増える項目とそのデフォルト値です。
:ServerSoftware => "#{svrsoft} OpenSSL/#{osslv}", :SSLEnable => true, # Ruby 1.8.3 以降では false がデフォルトです。 :SSLCertificate => nil, :SSLPrivateKey => nil, :SSLClientCA => nil, :SSLExtraChainCert => nil, :SSLCACertificateFile => nil, :SSLCACertificatePath => nil, :SSLCertificateStore => nil, :SSLVerifyClient => ::OpenSSL::SSL::VERIFY_NONE, :SSLVerifyDepth => nil, :SSLVerifyCallback => nil, # custom verification :SSLTimeout => nil, :SSLOptions => nil, :SSLStartImmediately => true, # Must specify if you use auto generated certificate. :SSLCertName => nil, :SSLCertComment => "Generated by Ruby/OpenSSL"
[SEE_ALSO] WEBrick::Config::General