質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

88.92%

rails s→http://localhost:3000でアクセスできない。

解決済

回答 2

投稿

  • 評価
  • クリップ 1
  • VIEW 16K+

koume

score 162

rails初心者です。仮想環境を構築しrails sを実行すると下記のように表示されます。(ssh接続済み)

=> Booting Puma
=> Rails 5.1.1 application starting in development on http://localhost:3000
=> Run `rails server -h` for more startup options
Puma starting in single mode...
* Version 3.8.2 (ruby 2.2.7-p470), codename: Sassy Salamander
* Min threads: 5, max threads: 5
* Environment: development
* Listening on tcp://0.0.0.0:3000
Use Ctrl-C to stop
^CExiting


WEBrickが立ち上がっていないみたいです。
ちなみにvagrant upの内容は下記になってます。

コードBringing machine 'default' up with 'virtualbox' provider...
==> default: Clearing any previously set forwarded ports...
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
    default: Adapter 1: nat
    default: Adapter 2: hostonly
==> default: Forwarding ports...
    default: 80 (guest) => 8080 (host) (adapter 1)
    default: 22 (guest) => 2222 (host) (adapter 1)
==> default: Running 'pre-boot' VM customizations...
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes...
    default: SSH address: 127.0.0.1:2222
    default: SSH username: vagrant
    default: SSH auth method: private key
    default: Warning: Connection aborted. Retrying...
    default: Warning: Connection reset. Retrying...
    default: Warning: Connection aborted. Retrying...
    default: Warning: Connection reset. Retrying...
    default: Warning: Connection aborted. Retrying...
    default: Warning: Connection reset. Retrying...
    default: Warning: Connection aborted. Retrying...
==> default: Machine booted and ready!
[default] GuestAdditions 5.1.22 running --- OK.
==> default: Checking for guest additions in VM...
==> default: Configuring and enabling network interfaces...
    default: SSH address: 127.0.0.1:2222
    default: SSH username: vagrant
    default: SSH auth method: private key
==> default: Mounting shared folders...
    default: /vagrant => C:/Users/owner/MyProjects/StrikeBack
==> default: Machine already provisioned. Run `vagrant provision` or use the `--provision`
==> default: flag to force provisioning. Provisioners marked to run always will still run.


自分なりにサイトで調べてみましたが成功した例はrails s 実行後の

  • Listening on tcp://0.0.0.0:3000 の行が* Listening on tcp://localhost:3000となっていて自分のとは違いました。
    エラーが出ているわけでもなさそうなのですがどこがいけないのでしょうか?
    Booting Pumaって何でしょうか?

また、ブラウザにどう打ち込んだらアプリケーションの初期画面が表示されるのでしょうか?
どなたか解決方法のご指導のほどよろしくお願いいたします。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 2

checkベストアンサー

+1

私もRails初心者なので、間違っていたらすみません。

確かRails5になり、開発サーバがWebrickからPumaに変わったはずです。

Booting Puma

とは、Pumaを起動しているという意味でしょう。

また、localhostでlistenされるように変更されたそうです(しっかりとは理解していない)。
とりあえずアプリケーションの実行結果を見たいなら、以下のコマンドでどのアドレスからも受け付けるようになるそうです(セキュリティ面はよくない可能性があるので注意です)。

rails s -b 0.0.0.0

参考
rails4-2beta1をインストールして最初にはまったこと

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/05/25 21:47

    回答ありがとうございます。教えていただいたとおりにやってみましたが状況は変わりませんでした。難しいものですね。もう少し自分でも調べてみます。
    今後ともよろしくお願いいたします。

    キャンセル

  • 2017/05/25 22:16 編集

    ダメでしたか...
    このサイトの内容を参考にされてはいかがでしょうか。

    http://qiita.com/Ago2_0727/items/325df5e39e3406fa16d2

    キャンセル

  • 2017/05/26 00:33

    引き続きの回答ありがとうございます。教えていただいたサイトを参考にして
    やってみました。おかげさまで無事に表示できました。長い一日がやっと終わりそうです。本当にありがとうございます。これからやっと開発に入れます。
    今後とも宜しくお願いします。

    キャンセル

0

仮想環境でrailsアプリを起動しているとのことなので、ホスト側からアクセスする場合はhttp://localhost:3000 ではなく http://仮想環境のIPアドレス:3000 にアクセスする必要があります。

仮想マシン上で以下のコマンドを実行し、仮想マシンのIPアドレスを調べる。

$ ip a

仮想マシン上でrailsアプリケーションを実行する。

$ rails s -b 0.0.0.0

ホスト側からアプリケーションにアクセスする。

http://仮想マシンのIPアドレス:3000/

仮想マシンのOSによっては、ファイアウォールが有効になっていてホスト側からアクセスできない可能性があります。CentoOS 7の場合は以下のコマンドでポート3000へのアクセスを許可できます。

$ sudo firewall-cmd --permanent --add-port=3000/tcp
$ sudo firewall-cmd --reload

# 確認
$ sudo firewall-cmd --list-all

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 88.92%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る