もしじるし

エンジニアとしての学び。人生の気付き。憧れの人へ出会うまでの道のり。

フレームワークを使用せずにローカルホストにサーバーを立ち上げる(Ruby使用)

フレームワークに頼らずにWEBサーバーを立ち上げたい

と思ったことがある人いませんか?ちょっとだけ動作確認したいときとか。

では、どうやってサーバを立ち上げればいいのか。
Apacheを使用するとサーバを構築することができるようですが、インストールはしたくない。
railsを使用すればサーバ構築できるけど、rails newするのが面倒。
rails使えばサーバを立ち上げれるのであれば、rubyを使用した方法はないのかな?と思って調べてみたところ、webrickというのを見つけました。

webrickとは?

Rubyに標準添付されているサーバー用のフレームワーク
Rails sするとBooting WEBrickと出てくる。railsもこのフレームワークを使用しているみたい。
※実際にBooting WEBrickのログを取ろうとしたらBooting Pumaって出てきた。

コードを用意する

require 'webrick'

srv = WEBrick::HTTPServer.new({
    DocumentRoot:   '.',
    BindAddress:    'localhost',
    Port:           '3000',
  })
  
  srv.start

起動する

ターミナルから起動

$ ruby webric.rb
[2019-03-02 17:33:05] INFO  WEBrick 1.3.1
[2019-03-02 17:33:05] INFO  ruby 2.1.3 (2014-09-19) [x64-mingw32]
[2019-03-02 17:33:05] INFO  WEBrick::HTTPServer#start: pid=16064 port=3000

ブラウザからlocalhost:3000に接続すると起動しているのが確認できる。

最後に

そもそもローカルにサーバを立ち上げようとしたのは、スマホで自分の作成したサイトを確認しようとしたからだけど、結局PCとスマホが同一ネットワーク上に存在していなかったので確認できなかった。 ただ、いままで何となくrails sでサーバを起動していたけれど、その中身を少しだけ勉強できたので良しとしよう。