rails sで起動するサーバーをWEBrickに戻したい

解決済

回答 1

投稿

  • 評価
  • クリップ 0
  • VIEW 2,020

YumaYamada

score 28

前提・実現したいこと

rails4にてチャットアプリを開発しています。
ログインシステムをWEBrickサーバー(localhost:3000)、メッセージを送るチャットシステムをthinサーバー(localhost:9292)で構築していました。
しかし、thinサーバーのデフォルトのポート番号をWEBrickサーバーと同じにしてしまい、thinサーバーのみしか起動しません。
そこで、デフォルトのサーバーをWEBrickに戻したいのですが、上手くいかないため質問させていただきました。

発生している問題・エラーメッセージ

private_pubとthinというgem(http://bit.ly/1VuiBQk)をインストールしたのち、config/private.ymlからthinサーバーのデフォルトのポート番号(localhost:9292)をWEBrickのポート番号(localhost:3000)と同じ番号に変更してしまい、上書きをしたところ、WEBrickのサーバーが起動しなくなってしまいました。

今まで試したこととして
・ターミナルでrails server webrickでは起動する。しかし、表示されるビューはthinサーバーのもののみ。
・gemfileからthinをアンインストールするとWEBrickサーバーが起動する。しかし、表示されるビューはthinサーバーのもののみ。
・他のアプリケーションでrails serverを実行すると、
"Could not find thin-1.6.4 in any of the sources
Run bundle install to install missing gems."や
"Could not find minitest-4.7.5 in any of the sources
Run bundle install to install missing gems."
とターミナルに表示され、WEBrickが起動しません。

補足情報(言語/FW/ツール等のバージョンなど)

OSX Yosemiteバージョン10.10.5
ruby 2.0.0p481
Rails 4.2.5
thin 1.6.4
webrick 1.3.1

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

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

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

    クリップを取り消します

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

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

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

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

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

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

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

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

    質問の評価を下げる

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

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

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

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

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

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

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

    詳細な説明はこちら

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

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

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

回答 1

checkベストアンサー

0

thinをアンインストールされたということですが、private_pubの方はどうされましたか?
private_pub側の設定でthinと連携するようになっているのではありませんか?

よく分からないのであれば、thinだけでなくprivate_pubも完全にアンインストール(=設定ファイルも削除)し、Macを再起動してから改めて必要なgemをインストール&設定することをオススメします。

thinだけをアンインストールしても、稼働中のprivate_pubが、やはり稼働中のthinのプロセスを掴んだ状態(使用中)だとthinのプロセスは終了しないので、localhost:3000 でアクセスすると先に実行していたthinのビューが表示されてしまうのだと思います。

同様の状況を再現して確認した訳ではないので、もし違っていたらごめんなさい。

投稿

  • 回答の評価を上げる

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

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

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

  • 回答の評価を下げる

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

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

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

  • 2016/01/02 13:23

    ご回答いただきありがとうございます。
    gemの設定ファイルというのは.gemrcで終わるファイルのことでしょうか?
    http://d.hatena.ne.jp/mpen/touch/20090416/p1

    恐れ入りますがよろしくお願い致します。

    キャンセル

  • 2016/01/02 15:58

    private_pubをアンインストールしてrails serverをターミナルで実行したところ、Load Errorとなってしまいました。

    => Booting WEBrick
    => Rails 4.2.5 application starting in development on http://localhost:3000
    => Run `rails server -h` for more startup options
    => Ctrl-C to shutdown server
    Exiting
    /Library/Ruby/Gems/2.0.0/gems/activesupport-4.2.5/lib/active_support/dependencies.rb:274:in `require': cannot load such file -- faye (LoadError)
    from /Library/Ruby/Gems/2.0.0/gems/activesupport-4.2.5/lib/active_support/dependencies.rb:274:in `block in require'
    from /Library/Ruby/Gems/2.0.0/gems/activesupport-4.2.5/lib/active_support/dependencies.rb:240:in `load_dependency'
    from /Library/Ruby/Gems/2.0.0/gems/activesupport-4.2.5/lib/active_support/dependencies.rb:274:in `require'
    from /Users/yamada/projects/bandkum2/config.ru:6:in `block in <main>'
    from /Library/Ruby/Gems/2.0.0/gems/rack-1.6.4/lib/rack/builder.rb:55:in `instance_eval'
    from /Library/Ruby/Gems/2.0.0/gems/rack-1.6.4/lib/rack/builder.rb:55:in `initialize'
    from /Users/yamada/projects/bandkum2/config.ru:in `new'
    from /Users/yamada/projects/bandkum2/config.ru:in `<main>'
    from /Library/Ruby/Gems/2.0.0/gems/rack-1.6.4/lib/rack/builder.rb:49:in `eval'
    from /Library/Ruby/Gems/2.0.0/gems/rack-1.6.4/lib/rack/builder.rb:49:in `new_from_string'
    from /Library/Ruby/Gems/2.0.0/gems/rack-1.6.4/lib/rack/builder.rb:40:in `parse_file'
    from /Library/Ruby/Gems/2.0.0/gems/rack-1.6.4/lib/rack/server.rb:299:in `build_app_and_options_from_config'
    from /Library/Ruby/Gems/2.0.0/gems/rack-1.6.4/lib/rack/server.rb:208:in `app'
    from /Library/Ruby/Gems/2.0.0/gems/railties-4.2.5/lib/rails/commands/server.rb:61:in `app'
    from /Library/Ruby/Gems/2.0.0/gems/rack-1.6.4/lib/rack/server.rb:336:in `wrapped_app'
    from /Library/Ruby/Gems/2.0.0/gems/railties-4.2.5/lib/rails/commands/server.rb:139:in `log_to_stdout'
    from /Library/Ruby/Gems/2.0.0/gems/railties-4.2.5/lib/rails/commands/server.rb:78:in `start'
    from /Library/Ruby/Gems/2.0.0/gems/railties-4.2.5/lib/rails/commands/commands_tasks.rb:80:in `block in server'
    from /Library/Ruby/Gems/2.0.0/gems/railties-4.2.5/lib/rails/commands/commands_tasks.rb:75:in `tap'
    from /Library/Ruby/Gems/2.0.0/gems/railties-4.2.5/lib/rails/commands/commands_tasks.rb:75:in `server'
    from /Library/Ruby/Gems/2.0.0/gems/railties-4.2.5/lib/rails/commands/commands_tasks.rb:39:in `run_command!'
    from /Library/Ruby/Gems/2.0.0/gems/railties-4.2.5/lib/rails/commands.rb:17:in `<top (required)>'
    from /Users/yamada/projects/bandkum2/bin/rails:9:in `require'
    from /Users/yamada/projects/bandkum2/bin/rails:9:in `<top (required)>'
    from /Library/Ruby/Gems/2.0.0/gems/spring-1.6.1/lib/spring/client/rails.rb:28:in `load'
    from /Library/Ruby/Gems/2.0.0/gems/spring-1.6.1/lib/spring/client/rails.rb:28:in `call'
    from /Library/Ruby/Gems/2.0.0/gems/spring-1.6.1/lib/spring/client/command.rb:7:in `call'
    from /Library/Ruby/Gems/2.0.0/gems/spring-1.6.1/lib/spring/client.rb:28:in `run'
    from /Library/Ruby/Gems/2.0.0/gems/spring-1.6.1/bin/spring:51:in `<top (required)>'
    from /Library/Ruby/Gems/2.0.0/gems/spring-1.6.1/lib/spring/binstub.rb:11:in `load'
    from /Library/Ruby/Gems/2.0.0/gems/spring-1.6.1/lib/spring/binstub.rb:11:in `<top (required)>'
    from /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_require.rb:54:in `require'
    from /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_require.rb:54:in `require'
    from /Users/yamada/projects/bandkum2/bin/spring:13:in `<top (required)>'
    from bin/rails:3:in `load'
    from bin/rails:3:in `<main>'

    キャンセル

  • 2016/01/02 17:03

    「gemの設定ファイル」とは書いていません。
    削除すべきは「thin」および「private_pub」の設定ファイルです。これら設定ファイルは、アンインストールしても削除されない場合があるので、要するに「thin」および「private_pub」のインストール前に戻すということを書きました。
    それから、「rails server」でエラーが発生してしまったのは、railsの設定ファイルも変更されてしまっている可能性が高いです。ですので、とりあえず下記ページを参考に
    「./config/environment/development.rb」と「./config/environment.rb」の設定内容を再確認してみてください。
    > http://chen-katze.blogspot.jp/2015/05/rails-server.html

    キャンセル

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

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