2012-07-24 516 views
1

如何在后台运行WEBrick服务器作为Windows服务?我试着按照this后的建议,但是我使用的是Rails 3,并且因为server目录不再存在于Rails 3中,所以无法提供相当于C:\RUBYAPP\script\server -e production的内容。任何帮助?将WEBrick作为Windows服务运行

+0

可能不是一个非常有用的评论,但我有同样的问题而回,不得不放弃,因为杂种没有为Rails 3的支持服务,故事的结局。这可能已经改变,但如果您遇到问题的可能性仍然存在,问题仍然存在。 – pepe 2012-07-24 20:04:04

+0

@pepe,因为这个原因,我现在使用WEBrick而不是mongrel。我甚至无法让杂种为我运行,更不用说运行作为服务:/ – aguazales 2012-07-25 13:09:38

+1

对不起,我想我读得太快了,我认为你的意思是Mongrel,因为大多数人使用它。我从来没有见过将WEBrick用作Windows服务,但我成功地手动运行了Mongrel。尽管如此,我已经转向了Thin。如果你正在寻找的是自动运行服务器,并且你并不关心它是一个Windows服务,那么你可以在启动时将它作为后台工作来运行。 – pepe 2012-07-25 13:48:06

回答

2

我从来没有见过的Windows服务的WEBrick使用,但一种变通方法,可以在运行Web服务器作为后台作业。这是你会怎么做:

你需要用2个指令的bat文件来启动Web服务器:

  • CD to_your_absolute_app_path
  • 轨小号

然后你将需要将该bat文件转换为exe文件。检查this免费工具。我知道该工具存在32位和64位,您可能需要寻找合适的工具。

当您创建的exe一定要选择它作为一种无形的应用程序运行。

然后你把exe文件放在启动文件夹中。这应该做到这一点。

+0

Just FYI,我结束时使用了您推荐的工具与[NSSM](http://nssm.cc/)(Non-Sucking Service Manager)结合运行生成的exe作为Windows服务。 – aguazales 2012-08-02 14:00:33

+0

事实证明,我需要在几周内为客户启动Thin这种方式,因此非常方便。非常感谢! – pepe 2012-08-02 21:01:07

+0

没问题!让我知道如果你有任何问题:) – aguazales 2012-08-06 21:05:56