Ruby 2.2.0 リファレンスマニュアル > ライブラリ一覧 > webrick/serverライブラリ > WEBrick::GenericServerクラス > new
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