質問: ### 前提・実現したいこと rails4にてチャットアプリを開発しています。 ログインシステムをWEBrickサーバー(localhost:3000)、メッセージを送るチャットシステムをthinサーバー(localhost:9292)で構築していました。 しかし、thinサーバーのデフォルトのポート番号をWEBrickサーバーと同じにしてしまい、thinサーバーのみしか起動しません。 そこで、デフォルトのサーバーをWEBrickに戻したいのですが、上手くいかないため質問させていただきました。 ### 発生している問題・エラーメッセージ private_pubとthinというgem()をインストールしたのち、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
回答: **thin**をアンインストールされたということですが、**private_pub**の方はどうされましたか? **private_pub**側の設定で**thin**と連携するようになっているのではありませんか? よく分からないのであれば、**thin**だけでなく**private_pub**も完全にアンインストール(=設定ファイルも削除)し、Macを再起動してから改めて必要なgemをインストール&設定することをオススメします。 **thin**だけをアンインストールしても、稼働中の**private_pub**が、やはり稼働中の**thin**のプロセスを掴んだ状態(使用中)だと**thin**のプロセスは終了しないので、localhost:3000 でアクセスすると先に実行していた**thin**のビューが表示されてしまうのだと思います。 同様の状況を再現して確認した訳ではないので、もし違っていたらごめんなさい。