• このエントリーをはてなブックマークに追加

VM上のRailsサーバにホストPCからアクセス出来ない

  • このエントリーをはてなブックマークに追加

rails

こんにちはZaco shinです。

railsを勉強するためにWindows7上にVMware Playerを入れて、そこにCentOS6をインストールしたVMを作ってRailsを検証しているのですが、ホストPCからブラウザでアクセスするとできないことがあったので、備忘的に残したいと思います。

スポンサーリンク
Sponsords Link

環境

ホストPC:Windows 7

VM:CentOS6.7、ruby2.3、rails4.2.5

発生した事象

rails newでアプリを作った後、rails sでWEBrickを起動した後に、ホストOS(Window7)からInternetExploerでアクセスするが、ページが表示されない。

はて?と思い、いろいろ調査するとiptablesでポート3000を開けてないことに気づき、ちょっくら入れてみました。

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3000 -j ACCEPT

再度、アクセスしてみるが、接続できない。。。ふと、そもそもguestOS(CentOS)から接続出来るのかなーと思い、wgetでアクセスしてみると、、、

wget localhost:3000
127.0.0.1:3000 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK

アクセスできる。内部から接続できるため、サービス自体の起動は問題なさそう。

対処方法

つらつら書きましたが、調べてみると、デフォルトではlocalhostからしかアクセスできない仕様になっているとのことです。

今回のような場合は、WEBrickを起動する際に、下記のようにbindオプションを使うことで外部から接続ができるようになります。

rails s -b 0.0.0.0

デフォルトページを表示されるのも一苦労でした。。。

スポンサーリンク
Sponsords Link
  • このエントリーをはてなブックマークに追加

ZacoDesign

スポンサーリンク
Sponsords Link