【问题标题】:Running webrick server in background for Windows在 Windows 后台运行 webrick 服务器
【发布时间】:2017-01-28 01:10:55
【问题描述】:

我想在 Windows 的后台运行 Webrick 服务器,但没有成功尝试了以下操作:

>rails s -d
C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/activesupport-4.0.4/lib/active_support/values/time_zone.rb:283: warning: circular argument reference - now
=> Booting WEBrick
=> Rails 4.0.4 application starting in development on http://0.0.0.0:3000
=> Run `rails server -h` for more startup options
C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rack-1.5.5/lib/rack/server.rb:327:in `daemon': daemon() function is unimplemented on this machine (NotImplementedError)
        from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rack-1.5.5/lib/rack/server.rb:327:in `daemonize_app'
        from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rack-1.5.5/lib/rack/server.rb:252:in `start'
        from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/railties-4.0.4/lib/rails/commands/server.rb:84:in `start'
        from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/railties-4.0.4/lib/rails/commands.rb:76:in `block in <top (required)>'
        from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/railties-4.0.4/lib/rails/commands.rb:71:in `tap'
        from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/railties-4.0.4/lib/rails/commands.rb:71:in `<top (required)>'
        from bin/rails:4:in `require'
        from bin/rails:4:in `<main>'

我该如何解决这个问题?

【问题讨论】:

  • 这可能会有所帮助:stackoverflow.com/questions/7630512/…
  • 谢谢@AliMasudianPour ..我会检查并回来..
  • @AliMasudianPour 它对我有用,您能否将其添加为答案,以便我可以为您的答案分配赏金。
  • @Shruti 我在下面添加了答案。

标签: ruby-on-rails-4 background windows-7 webrick


【解决方案1】:

来自Ali MasudianPour and brad的解决方案:

https://github.com/luislavena/service_wrapper/downloads 下载service_wrapper-0.1.0-win32.zip 并从bin/ 提取service_wrapper.exe。我把它提取到C:\service_wrapper

接下来设置一个配置文件。我使用了 hello 示例并针对我的应用对其进行了修改,然后将其放置在 C:\service_wrapper 目录中。

; Service section, it will be the only section read by service_wrapper
[service]

; Provide full path to executable to avoid issues when executable path was not
; added to system PATH.
executable = C:\Ruby192\bin\ruby.exe

; Provide there the arguments you will pass to executable from the command line
arguments = C:\railsapp\script\rails s -e production

; Which directory will be used when invoking executable.
; Provide a full path to the directory (not to a file)
directory = C:\railsapp

; Optionally specify a logfile where both STDOUT and STDERR of executable will
; be redirected.
; Please note that full path is also required.
logfile = C:\railsapp\log\service_wrapper.log

现在只需创建服务

sc create railsapp binPath= "C:\service_wrapper\service_wrapper.exe C:\service_wrapper\service_wrapper.conf" start= auto

(注意binPath=start= 后面的空格。没有它们就不行)

然后开始

net start railsapp

然后你就回家了!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-10-19
    • 1970-01-01
    • 1970-01-01
    • 2012-08-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多