6

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

すぐに終了する理由を追跡する方法はありますか?

4

1 に答える 1

4

を使用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
于 2012-08-12T19:07:39.110 に答える