2013-10-29 82 views
1

由於我的Rails應用程序中有一些花哨的技巧(並且爲了讓我的開發設置看起來更像prod),我開始使用Phusion Passenger Standalone作爲我的開發Web服務器。如何使用Phusion Passenger Standalone作爲默認的Rails服務器

目前我開始它爲$ bundle exec passenger start。如果我運行$ rails s它引導WEBrick,這不是我想要的。

有沒有辦法配置我的應用程序,所以我可以運行它的「常用方式」爲$ rails s

(很抱歉,如果這是顯而易見的,搜索在谷歌的預期關鍵字發現了很多不相關的東西...)

回答

4

如果你真的想迫使這一點,有一個簡單的黑客,會做什麼你要。 您可以通過修改應用程序的腳本/軌道捕獲所有軌服務器調用,並進行系統調用來啓動乘客,就像這樣:

if (ARGV.first == 'server' || ARGV.first == 's') 
    system("passenger start #{ARGV.shift.join(" ")}") 
else 
    # The old content of the script goes here 
    APP_PATH = File.expand_path('../../config/application', __FILE__) 
    require File.expand_path('../../config/boot', __FILE__) 
    require 'rails/commands' 
end 

更多的信息在這裏檢查https://groups.google.com/forum/#!topic/phusion-passenger/XBhlF5lRo2A

+0

感謝您的回答!但有一個建議:爲了向乘客傳遞除第一個參數以外的所有參數,我最終使用了「ARGV.drop(1)」來代替「ARGV.shift」。 –

相關問題