我从2007年的一本书中的rails教程制作了基本的博客演示。我意识到它已经过时了,所以我删除了我制作的博客,并开始从这里的教程重做它:http://guides.rubyonrails.org/getting_started.html#creating-the-blog-application
我从头开始,现在我在该链接的指令上坚持4.3,因为当我输入http://localhost:3000/
时,我一直在获取Rails的默认屏幕,而不是“Hello,Rails!”像啧啧说我应该。
4.3的说明是输入
rm public/index.html
然后访问routes.rb文件以取消注释root to:section,使其显示
root :to => "welcome#index"
我继续进行迁移,但仍然保持默认屏幕。
然后我输入
rails server -d
看看是否有诀窍但是没有。它只是说这只以第二个=>:
结尾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'
如果有人要我粘贴剩下的错误,我会继续这样做。
我不知道该怎么办才能解决这个问题。
感谢您的帮助
答案 0 :(得分:8)
TCPServer错误:地址已在使用中 - bind(2)
正在发生以下两件事之一:
第一次执行rails server -d
时,您启动了一个正在使用端口3000的后台WEBrick服务。找到正在运行的进程并通过以下方式终止它:
ps aux | grep ruby
kill [PID from above]
然后使用rails server
重新启动您的WEBrick。此时,已经删除了public / index.html,您的路由应该是活动的并且正常工作。