【问题标题】:Thin::Server#daemonize exits immediatelyThin::Server#daemonize 立即退出
【发布时间】:2012-07-22 14:29:11
【问题描述】:

我试图制作一个可执行文件,它通过 Thin 作为守护进程启动 Sinatra 应用程序。 我正在使用此代码通过 Sinatra 应用程序调用 Thin:

#!/usr/bin/env ruby

require 'thin'
require 'app.rb'

server = ::Thin::Server.new('127.0.0.1', 9999, App)
server.log_file = 'tmp/thin.log'
server.pid_file = 'tmp/thin.pid'
server.daemonize

这是我执行脚本时得到的日志输出:

>> Writing PID to tmp/thin.pid
>> Exiting!

当我这样做时服务器启动正常

server.start

有什么建议我可以找到它为什么立即退出?

【问题讨论】:

  • 1. tmp 文件夹是可写的吗? 2.服务器对象创建部分是App还是App.new?

标签: ruby sinatra thin


【解决方案1】:

使用daemonize 只会使脚本成为守护进程,实际上并不会启动服务器。之后您仍需要致电start

server.daemonize
server.start

日志文件:

>> Writing PID to tmp/thin.pid
>> Thin web server (v1.4.1 codename Chromeo)
>> Maximum connections set to 1024
>> Listening on 127.0.0.1:9999, CTRL+C to stop

【讨论】:

  • 像魅力一样工作。非常感谢!
  • 这是一个相当老的帖子,但我在致电server.daemonize后不必明确开始瘦身
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-09-30
  • 2017-04-12
  • 2012-08-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多