2011-09-28 95 views
4

現在我對Sinatra/Ruby/Apache很新,但繼承了Sinatra應用程序進行部署。設置Sinatra在子目錄中運行

目前Apache是​​建立從文檔根目錄下運行(httpdocs資料),我需要運行一個文件夾目錄下的子目錄Ruby應用程序,如:/ httpdocs資料/ webapp的

什麼我需要做的就是這個在子目錄下運行?

回答

2

此鏈接可能是有益的,它說明了如何使用部署客運(mod_rack)與Apache一西納特拉的應用程序:你是在虛擬主機配置RackBaseURI選項 Deploying a Sinatra App with Apache and Phusion Passenger

特別感興趣的部分。官方文檔可在這裏找到: Phusion Passenger users guide - Deploying Rack to Sub URI

+0

謝謝布倫特,這正是我需要的! – Donald

+0

明白了。但子目錄中的應用程序將指向「/」給父應用程序。我怎樣才能指出每個應用程序的根? – goo

+0

goo:如果我正確理解您的問題,則由子目錄中的sinatra應用程序生成的任何url引用都不會考慮包含子目錄名稱的基礎url。如果這是問題,你可以看看一個像[sinatra-url-for](https://github.com/emk/sinatra-url-for/)這樣的寶石,或者像本次討論中建議的那樣創建一個助手[get絕對基地url在sinatra](http://stackoverflow.com/questions/2950234/get-absolute-base-url-in-sinatra) – brentvatne