【Ruby標準ライブラリ】WEBrickでWEBサーバーを作る手順

Not image

今日は、Rubyの標準ライブラリのWEBrickというものを使って、簡単にWebサーバーを構築してみます。

Webサーバーの構築といっても、複雑なことは一切ありません。Webサーバーと聞くと難しく考えてしまいがちですが、Webサーバーの構築を支えるフレームワークですので、自分で書くコードは数行で済みます。

通常Webサーバーを構築するには、ApacheやNginxなどのWebサーバーソフトウェアを使う場合が多いですが、「簡易的にWebサーバーを使ってみたい!」という方にとっては、学習コストが高いと思います。

そこで、今すぐにでも使い始めることができるWEBrickの登場ということです。

今回は、Webサーバーとは・WEBrickとは・WEBrickでWebサーバーを作る手順という構成にしようと思います。

Webサーバーとは

まず、Webサーバーを作るのにWEBサーバーがなんなのかという状態はまずいので、確認していきましょう。

Webサーバーとは、みなさんが今使っている端末のWebブラウザからのリクエストに答えて、要求されたファイルを送信する役割を持っています。

具体的にいうと、このページを見るときにもみなさんの端末のWebブラウザは、このページが見たいと要求(リクエスト)を出しました。そこで、Webサーバーは要求さ入れたこのページのHTMLファイルをあなたのブラウザに送信して、今現在あなたはこのページを見れているのです。

この送受信の通信規約(プロトコル)にはHTTPというものが使われるため、Webサーバーを別名「HTTPサーバー」とも呼ばれます。

Webサイト描画の流れ
  1. Webブラウザが「このファイルが欲しい!」とリクエストを送信
  2. Webサーバーが要求されたファイルを探す
  3. Webサーバーが要求されたファイルをブラウザにレスポンスを送信
  4. Webブラウザがレスポンスを受け取り、描画

WEBrickとは

Webサーバーのやっていることが理解できたところで、今回の主題である「WEBrick」について確認しておきます。

WEBrickは、Rubyの標準ライブラリです。Webサーバー用フレームワークという立ち位置です。

Webサーバーとしての機能は内部に隠しているので、私たちが書くコードはとても少ないです。

WEBrickでWebサーバーを作る手順

ステップ1:WEBrickを動かすファイルを作成・WEBrickを起動

基本的に好きなファイル名で構いませんが、WEBrickを使うことがわかるようなファイル名にしましょう。「webrick.rb」など。

ファイルに以下のようなコードを書きます。

なんとこれだけで動いてしまいます。

ターミナルは、待機状態になると思います。

ステップ2:Webブラウザで表示するファイルを作成

次は、ブラウザに表示するHTMLファイルを作成しましょう。

先ほど「webrick.rb」ファイルを作成したディレクトリと同じディレクトリに、「index.html」ファイルを作成しましょう。

そして以下のようなコードを書き込みましょう。

これで準備完了です。

ステップ3:Webブラウザを確認

最後に、以下のURLにアクセスしてみてください。

http://localhost:8000/

すると、ブラウザに先ほど「index.html」に書いた内容が描画されると思います。

もし、日本語が文字化けしてしまったら、「index.html」の「<head></head>」の部分を「<head><meta charset=”UTF-8″></head>」に変更してみてください。

文字コードの違いが原因です。

まとめ

今回は簡易版とはいえ、立派なWebサーバーを作り使ってみました。いかがだったでしょうか?

この記事がきっかけで「Webサーバーとはなんなのか?」という疑問を持ったり、「ApacheやNginxってなんだろう?」と他のWebサーバーに興味が出た方は、ぜひ深く調べてみてください。きっと新しい発見があるはずです。

また今回作ったWEBrickのコードは、最低限実行できるWebサーバーを構築してブラウザから確認したのみなので、他にもどんなことができるのか調べてみるのも良いと思います。

RubyのERBというライブラリをWEBrickと一緒に使うと、もっと面白い処理ができるので調べてみてください。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です