サーバーはすでにRailsで実行されています質問する

サーバーはすでにRailsで実行されています質問する

rails sコマンドを使用してRailsサーバーを起動すると、次のように表示されますA server is already running. Check C:/Sites/folder/Pids/Server.pids

ファイルを開くと 4 桁の数字のみが出力されますが、この問題をどのように解決すればよいでしょうか?

ご参考までに

  1. 今回は Rails cmd の他のインスタンスは実行されていません。
  2. タスク マネージャーを確認しましたが、cmd.exe他に実行中のプロセスは表示されません。(Windows を使用)

ベストアンサー1

TL;DR このコマンドを実行するだけで終了できます

sudo kill -9 $(lsof -i :3000 -t)

根本的な原因:PID はファイルにロックされており、Web サーバーはそのファイルが存在する場合、すでに実行されているとみなします。通常、Web サーバーが閉じられると、そのファイルは削除されますが、場合によっては適切に削除されないため、手動でファイルを削除する必要があります。新しいソリューション

走るときレールs

=> WEBrick を起動する

=> Rails 4.0.4アプリケーションの開発が開始http://0.0.0.0:3000

=> 実行してrails server -hその他の起動オプションを確認する

=> Ctrl-C でサーバーをシャットダウンします

サーバーはすでに実行されています。/your_project_path/tmp/pids/server.pid を確認してください。終了

パスをここに配置します /your_project_path/tmp/pids/server.pid

これを削除するサーバー.pidファイル:

rm /your_project_path/tmp/pids/server.pid

または、サーバーが切断された場合は、以下のガイドラインに従ってください。

「rails -d」コマンドを使用してrailsサーバーをデタッチした場合、

コマンドを使用してレールのデタッチサーバーを削除する

ps -aef | grep rails

またはこのコマンドで

sudo lsof -wni tcp:3000

それから

kill -9 pID

またはこのコマンドを使用する

プログラムが実行されているポート名でプロセスを検索して終了します。3000 の場合は、プログラムが実行されているポートを置き換えます。

sudo kill -9 $(lsof -i :3000 -t)

古い解決策:

rails s -p 4000 -P tmp/pids/server2.pid

その他のオプションについては、この投稿をご覧ください。Rails 3.2.11 へのアップデートにより、複数サーバーの実行が中断される

おすすめ記事