Firefox can't establish a connection to the server at localhost:4567
我按照 tutsplus 的教程创建了一个简单的 ruby??/sinatra 应用程序。我已经按照指示完成了所有操作,但是当我转到"localhost:4567"时,我没有看到我所期望的,而是收到了错误消息:
"Firefox 无法在 localhost:4567 建立与服务器的连接"
我需要对这个端口做些什么吗?
编辑:
在一些帮助下,我想我应该使用端口 9393。但现在我得到了这个错误:error
这是我的recall.rb应用程序中的代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| require 'rubygems'
require 'sinatra'
require 'datamapper'
DataMapper::setup(:default,"sqlite3://#{Dir.pwd}/recall.db")
class Note
include DataMapper::Resource
property :id, Serial
property :content, Text, :required => true
property :complete, Boolean, :required => true, :default => false
property :created_at, DateTime
property :updated_at, DateTime
end
DataMapper.finalize.auto_upgrade!
get '/' do
@notes = Note.all :order => :id.desc
@title = 'All Notes'
erb :home
end |
再次编辑:
使用
解决
require data_mapper
- 您可以分享教程的链接或在此处发布您的代码以及您用于运行服务器的命令吗?
-
@mbratch:我该怎么做?
-
@alfonso:啧啧:net.tutsplus.com/tutorials/ruby/...我被困在"布局"标题...
-
你能提供一些输出吗,即。当您执行它时... Sinatra 默认情况下会在开始时打印一些信息。一些ruby代码也不会造成任何伤害。
-
抱歉,我忘了问:当您运行 ruby basics.rb 时,您是否收到一条消息,说 Sinatra 已在端口 4567 上"登台"?
-
@mbratch:basics.rb 是我做过的另一项练习……但是当我运行"ruby basics.rb"时,我得到了"sinatra 已经上台"的消息……但是当我运行"ruby remember.rb"时却没有' 这是另一个应用程序。
-
@Kira:这是应用程序代码:pastebin.com/QV7SNByc
根据您在其他评论中发布的 png 文件,您的 Webrick 服务器说它在端口 9393 上启动。所以您应该尝试通过 http://localhost:9393 访问该应用程序。
-
那就对了!我这样做了,并且有一个新的发展:链接,现在我完全迷路了!
-
如果有帮助,我已经使用此命令 gem install sqlite3 datamapper dm-sqlite-adapter 安装了 sinatra 和 datamapper。
-
现在它正在尝试访问您的应用,但您的应用在某处出现错误。如果您想要更多希望,您最终需要展示您的代码。我建议编辑您的原始帖子并包含更多信息。我假设您已经脱离了教程所做的工作并添加了更多内容。安装 gem 时是否收到消息说 datamapper 安装成功?试试 gem list datamapper。
-
@Siaw 这是问题的正确答案。它应该被接受,如果你有不同的问题,你应该打开另一个问题。
-
@mbratch 当我运行 gem list datamapper 我得到 *** LOCAL GEMS *** datamapper (1.2.0)
-
@bdares 我已经在开始的帖子中发布了我的代码,但这里又是应用程序代码
记得用 shotgun recall.rb.
启动你的服务器
- 仔细查看图片,并阅读输出。就像@mrbratch 所说,它告诉你 9393。
-
解决了!这很奇怪,或者我不明白。在我的recall.rb中,我将 require 'datamapper 更改为 require data_mapper 但我没有任何"data_mapper" gem,但它有效。我拥有的ruby是名称"datamapper",所以这很令人困惑。