当然你不是在寻找/ faye?

jul*_*ard 4 rack ruby-on-rails faye

我正在按照本教程的信件:

http://net.tutsplus.com/tutorials/ruby/how-to-use-faye-as-a-real-time-push-server-in-rails/

我已经安装了thin,faye并在faye.ru文件中写了以下内容:

require 'faye'
bayeux = Faye::RackAdapter.new(:mount => '/faye', :timeout => 25)
bayeux.listen(9292)
Run Code Online (Sandbox Code Playgroud)

但是当我启动机架式服务器时:

rackup faye.ru -E production -s thin
Run Code Online (Sandbox Code Playgroud)

服务器确实正确启动:

>> Thin web server (v1.5.0 codename Knife)
>> Maximum connections set to 1024
>> Listening on 0.0.0.0:9292, CTRL+C to stop
Run Code Online (Sandbox Code Playgroud)

但是当我访问任何网页,例如"http:// localhost:9292 /"时,我收到以下消息:

Sure you're not looking for /faye ?
Run Code Online (Sandbox Code Playgroud)

本教程和Ryan Bates导演#260都没有解释为什么会发生这种情况.有人有想法吗?

我必须说我的项目使用的是ruby版本1.8.7(我无法升级到1.9,因为我使用的一些宝石还不支持1.9).

jul*_*ard 5

好吧,实际上一切正常,我只是不明白王菲应该做什么.

Faye服务器不会替换Rails服务器,而是补充它.我期待在localhost:3000和localhost:9292上看到相同的东西.

如果有人像我一样困惑,你必须同时运行两个服务器:

Rails服务器:

 rails server [with your options if any]
Run Code Online (Sandbox Code Playgroud)

用于处理JS通道的Faye服务器:

 rackup faye.ru -s thin -E production
Run Code Online (Sandbox Code Playgroud)

并且用户仅与rails服务器交互(在端口3000上)并使Faye服务器在后台运行.

  • 查看使用Foreman,它将允许您同时启动它们. (2认同)