スキップしてメイン コンテンツに移動

webrick - rubyでwebサーバをたてる

webrickとは


 
rubyには,httpサーバの機能を提供するフレームワーク,webrickがある.webrickはruby-1.8以降では標準で添付されている.このため,apacheなどのサーバプログラムをインストールする必要がない.加えて,apacheのような複雑な設定ファイルの記述は不要である.


 
これは,簡易httpサーバを立てる際に便利である.例えば,次のような場合に威力を発揮する.



  • htmlやcgiなどの簡単なコーディングをして,動作させたい

  • ローカルで運営する簡単なwebサーバをたてたい


 
このような場合,apacheほどの速度やセキュリティは必要ではなく,お手軽さが臨まれる.この要望を満たす手段として,webrickは有用である.


サンプルコード


 
以下に,webサーバをたてるサンプルコードを示す.ここで,公開するファイルの置かれているドキュメントのルートディレクトリは,${HOME}/public_html/とする.



#!/usr/bin/env ruby

require 'webrick'

server = WEBrick::
HTTPServer.new({
:Port => 80,
:BindAddress => '0.0.0.0',
:DocumentRoot => "#{ENV['HOME']}/public_html/"})
trap('INT') { server.shutdown }
server.start

 
HTTPServer.newでサーバを起動する.引数は以下の通り.



  • Port 使用するポート番号を指定する

  • BindAddres 起動するサーバのIPアドレスを指定する

  • DocumentRoot htmlドキュメントを置くルートディレクトリを指定する


実行


 
上に示したスクリプトを保存し,実行すると,httpサーバの動作を開始する.終了時は,Ctrl+cで終了する.


閲覧


 
${HOME}/public_htmlにindex.htmlを置き,http://localhost/にアクセスすると,index.htmlの内容を閲覧することができる.


関連文献


webrickリファレンス


WEBrick::HTTPServer - Rubyリファレンスマニュア