ruby+sinatraで作成したwebアプリへの外部からのアクセス方法
久しぶりの更新ですね(ちゃんと生きてます
今回はweb初心者がrubyの起動に関するところで勉強したことをひとつ.
はじめに
webアプリをサーバで動かし,そこに他のマシンからアクセスできるようにするためには,自分でイチからサーバ構築する必要があるのかと思っていました.
しかし,WEBrickを使えばそんな必要はなさげです.
webrickとは
はい,わざわざ自分で構築する必要がなくなります.
どうやら最近のバージョンでは,rubyインストール時にくっついてきてくれるようです.
当然,実際に運用するためにはきちんと構築する必要がありそうですが,今回みたいに実験的にちょこちょこっと使いたい,みたいな用途に対しては非常に便利ですね.
アプリの起動
では,実際に起動してみます.
ruby filename.rb
これでwebアプリを起動することができます.
しかし,このままではlocalhostからのアクセスしか受け付けません.
そこで,実行環境とホストのIPアドレス,ポート番号を指定してやります.
ruby filename.rb -e production -o IPAddress -p port
eで実行環境を選択することができます
developmentは開発環境として,productionは本番環境として起動してくれます.
oでホストのIPアドレスを,pでポート番号を指定することができます.
今回はrubyプログラムを実行するマシンのIPアドレスを固定し,そのアドレスを指定しました.
これで無事に動いてくれます.
次に他のマシンからサーバに対してのアクセスを試みます.
他のマシンからのアクセス
IPアドレス:ポート番号/filename
ブラウザから,指定したIPアドレスとポート番号を入力し,表示させたいページを指定すればOK
localhostの場合だと,localhost:4567/indexという具合ですね.
これで他のマシンからもアクセスが可能になります.
参考
参考にさせていただいた記事はこちらhamuhamuengineer.blogspot.jp