3

Windows PC の Rails インストーラーでデスクトップ ブラウザー アプリケーションを 1 つ作成しました。今、私は実行しようとしていますrails s -p3001 -e production -d。PCでは動きません。

Windows PC でアプリケーション サーバー プロセスを切り離す方法は?

ここにエラーがあります

=> Booting Thin
 > Rails 3.2.7 application starting in production on http://0.0.0.0:3000
C:/ibt/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/activesupport-3.2.7/lib
/active_support/core_ext/process/daemon.rb:3:in `fork': fork() function is unimp
lemented on this machine (NotImplementedError)
    from C:/ibt/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/activesupp
 ort-3.2.7/lib/active_support/core_ext/process/daemon.rb:3:in `daemon'
    from C:/ibt/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/rack-1.4.1
/lib/rack/server.rb:314:in `daemonize_app'
    from C:/ibt/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/rack-1.4.1
 /lib/rack/server.rb:254:in `start'
    from C:/ibt/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/railties-3
.2.7/lib/rails/commands/server.rb:70:in `start'
from C:/ibt/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/railties-3
2.7/lib/rails/commands.rb:55:in `block in <top (required)>'
    from C:/ibt/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/railties-3
2.7/lib/rails/commands.rb:50:in `tap'
    from C:/ibt/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/railties-3
.2.7/lib/rails/commands.rb:50:in `<top (required)>'
     from script/rails:6:in `require'
     from script/rails:6:in `<main>'
4

2 に答える 2

1

エラーメッセージはそれを非常に明確にします:fork() function is unimp lemented on this machine (NotImplementedError)

Railsサーバーがデーモン化される方法はfork system call、マシン上でを呼び出すことです。Railsリポジトリからの関連コードは次のとおりです。exit if fork

システムコールWindows Operating Systemを実装していないため、WindowsPCで失敗しています。fork

1つのオプションは、Windowsがfork()に最も近いものは何ですか?へのこの回答Cygwinで提案されているように、WindowsPCにインストールすることです。

于 2013-02-07T10:10:59.970 に答える
0

リンクを参照してこの質問を解決しました ::バックグラウンドプロセスでレールを実行 -windows

回答ありがとうございます

于 2013-02-12T09:52:57.317 に答える