terminal
A server is already running. Check /Users/maedatakuo/projects/furima-32844/tmp/pids/server.pid.
参考:ぷりくろ.com
https://purikuro.com/2020/08/13/programing_error/
解決策1 サーバーの切り忘れ
開いてるターミナルを全部終了して、rails sでサーバー起動をする.
そう言った場合は1つずつ「コントロール+C」を押して、サーバー停止させるか、ターミナルを消してしまいましょう。
解決策2 lsof -wni tcp:3000と kill
terminal
maedatakuo@maedatakudainoMacBook-Air furima-32844 % lsof -wni tcp:3000
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
ruby 56002 maedatakuo 12u IPv4 0x5a5a3176181f2d33 0t0 TCP 127.0.0.1:hbci (LISTEN)
ruby 56002 maedatakuo 14u IPv6 0x5a5a3176211a8c53 0t0 TCP [::1]:hbci (LISTEN)
ruby 56002 maedatakuo 26u IPv6 0x5a5a3176211a85f3 0t0 TCP [::1]:hbci->[::1]:65376 (CLOSE_WAIT)
ruby 56002 maedatakuo 27u IPv6 0x5a5a317625f7ef93 0t0 TCP [::1]:hbci->[::1]:65368 (CLOSE_WAIT)
ruby 56002 maedatakuo 30u IPv6 0x5a5a3176243d65f3 0t0 TCP [::1]:hbci->[::1]:65372 (CLOSE_WAIT)
ruby 56002 maedatakuo 33u IPv6 0x5a5a317625f7e933 0t0 TCP [::1]:hbci->[::1]:65379 (CLOSE_WAIT)
terminal
maedatakuo@maedatakudainoMacBook-Air furima-32844 % kill -9 56002
pitというのが裏で動いているサーバー番号になります。これをkillします。
私はこれでなおりました。
解決策3 ps aux | grep rails でプロセス削除
terminal
$ rails s
=> Booting Puma
=> Rails 5.0.7.2 application starting in development on http://localhost:3000
=> Run `rails server -h` for more startup options
A server is already running. Check プロジェクト名/tmp/pids/server.pid.
Exiting
$ ps aux | grep rails
user 28321 s001 S+ 0:00.00 grep rails
$ kill -9 28321
$ rails s
→ 解決
rails サーバーのプロセスを終了させる方法です。
実は、僕はこの方法で解決できたことがありません。
もしこの方法で直せた方や、原因が分かる方がいらっしゃればご教授願いますっ
解決策4 rm /tmp/pids/server.pid でパスを指定して削除
terminal
$ rm /tmp/pids/server.pid
$ rails s
→ 解決
このファイルの場所は[アプリ名]/tmp/pids/server.pidに入っているので、パスを指定して削除します。
本来、サーバーを終了するとこのファイルは削除されますが、残ったままでエラーになっている可能性があるみたい。