簡易Webサーバ

WEBRickを使って簡単にhttpサーバを作成できます。
ドキュメントルートをカレントのroot/に設定、ポートを8080とした場合、以下の記述だけで動きます。
終了するときは、Ctrl+C または killコマンドを実行。終了設定については、昨日の日記を参照。

#!/usr/bin/ruby -Ku
require 'webrick'

config = {
  :BindAddress => '0.0.0.0',
  :DocumentRoot => './root',
  :Port => 8080,
}

s = WEBrick::HTTPServer.new(config)
[:INT, :TERM].each{|sig| Signal.trap(sig){s.shutdown}}
s.start

ログを取得したいときは、configに:Loggerを追加します。
第二引数のはログレベルです。FATAL、ERROR、WARN、INFO、DEBUGから選択できます。

config = {
  :BindAddress => '0.0.0.0',
  :DocumentRoot => './root',
  :Port => 8080,
  :Logger => WEBrick::Log::new("log.txt", WEBrick::Log::DEBUG),
}