今日は、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ブラウザが「このファイルが欲しい!」とリクエストを送信
- Webサーバーが要求されたファイルを探す
- Webサーバーが要求されたファイルをブラウザにレスポンスを送信
- 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と一緒に使うと、もっと面白い処理ができるので調べてみてください。
コメントを残す