1

2007 年の本にある Rails チュートリアルから基本的なブログ デモを作成しました。それが古いことに気付いたので、作成したブログを削除し、ここのチュートリアルからやり直し始めました: http://guides.rubyonrails.org/getting_started.html #作成-ブログ-アプリケーション

私はゼロから始めましたが、http://localhost:3000/入力すると「Hello, Rails!」ではなく Rails のデフォルト画面が表示され続けるため、そのリンクの指示で 4.3 に固執しています。tutが私がすべきだと言うように。

4.3の指示は入力することです

rm public/index.html

次に、routes.rb ファイルにアクセスして、root to: セクションのコメントを外し、次のようにします。

root :to => "welcome#index"

移行とそのすべてを続けましたが、それでもデフォルトの画面が表示され続けます。

それから私はタイプした

rails server -d

それがうまくいくかどうかを確認しますが、いいえ。これは2番目の=>で終わるだけだと言っているだけです:

blog ❯ rails server -d
=> Booting WEBrick
=> Rails 3.2.3 application starting in development on http://0.0.0.0:3000

入力するだけなら

rails server

ターミナルに次のようなエラーが表示されます。

blog ❯ rails server

=> Booting WEBrick

=> Rails 3.2.3 application starting in development on http://0.0.0.0:3000

=> Call with -d to detach

=> Ctrl-C to shutdown server

[2012-05-28 17:42:34] INFO  WEBrick 1.3.1

[2012-05-28 17:42:34] INFO  ruby 1.9.3 (2012-02-16) [x86_64-darwin11.3.0]

[2012-05-28 17:42:34] WARN  TCPServer Error: Address already in use - bind(2)
Exiting

/Users/Nick/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/webrick/utils.rb:85:in     `initialize': Address already in use - bind(2) (Errno::EADDRINUSE)
from /Users/Nick/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/webrick/utils.rb:85:in `new'

残りのエラーを貼り付けてほしいという人がいれば、それを実行します。

これを修正するためにここから何をすべきかわかりません。

ご協力いただきありがとうございます

4

1 に答える 1

8

TCPServer エラー: アドレスは既に使用されています - bind(2)

次の 2 つのいずれかが発生しています。

  1. ポート 3000 で別の場所で WEBrick サーバーを既に実行しています。新しいサーバーを開始する前に、それを強制終了してください。
  2. 他のプロセスがポート 3000 でリッスンしています

初めて実行したときrails server -d、ポート 3000 を使用しているバックグラウンドの WEBrick サービスを開始しました。実行中のプロセスを見つけて、次の方法で強制終了します。

ps aux | grep ruby
kill  [PID from above]

次に、WEBrick を再起動しますrails server。この時点で、public/index.html は既に削除されているので、ルートはアクティブで機能しているはずです。

于 2012-05-28T22:13:37.043 に答える