2011-04-16 51 views

回答

28

有几个选项,在Sinatra FAQ中有详细说明。最简单的似乎是使用shotgun,您可以安装并调用如下:

$ sudo gem install shotgun 
$ shotgun myapp.rb 

,或者如果您使用从Sinatra::Base继承您的应用定义和使用config.ru文件:

$ shotgun config.ru -p 4567 
+4

如果执行从项目目录'shotgun',它会找到'自动config.ru'。 – 2011-04-16 03:52:53

+0

作为一个说明,霰弹枪自动重新启动应用程序。应该明确自动考虑更改与重新启动应用程序之间的区别。 +1虽然。 – jer 2011-04-16 03:53:18

+0

在模块化风格下运行Sinatra时,这将如何工作? – Mohamad 2013-08-23 16:14:58

5

如果您使用的Phusion客运,你可以把这个文件在应用程序的根文件夹

TMP/always_restart.txt

,它会在每次请求时重新启动。

http://www.modrails.com/documentation/Users%20guide%20Apache.html(8.7节)

+0

如果在OS X中使用37signal的''pow'',并且在开发过程中非常方便,上面的方法也可以工作。(http://pow.cx/manual.html#section_2.5) – nimrodm 2012-12-16 18:45:05

0

更好的办法是使用reloader从西纳特拉-的contrib宝石(也Sinatra FAQ):首先安装西纳特拉-的contrib宝石,然后确保你的应用程序文件名为.rb这些行开始:

require 'sinatra' 
require 'sinatra/reloader' if development? 

然后任何修改过的配置文件将重新加载(无需重新启动服务器!)

+0

如果你使用模块化风格运行Sinatra,那么你认为这种方法可行吗? – Mohamad 2013-08-23 16:11:21

相关问题