2011-04-16 72 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

相關問題