2013-05-21 101 views
3

我想在乘客上部署Bluehost上的Rails應用程序,而且我一直都在失敗。 我使用安裝在乘客寶石:在Bluehost上使用Phusion Passenger進行Rails部署

gem install passenger 

而且還跑:

passenger-install-apache2-module 

而且跑我所有的數據庫遷移,也做了一個資產預編譯

的問題是,我想將其託管在一個子域中,因此我執行了以下步驟:

  1. 創建子域。
  2. 從rails應用程序指向子域創建一個sym鏈接。
  3. 添加以下行到我的.htaccess:

PassengerEnabled在

PassengerAppRoot /家/用戶名/ rails_apps/my_app應用

當我瀏覽到我的域名在它給我的瀏覽器:

內部服務器錯誤。 服務器遇到內部錯誤或配置錯誤,無法完成您的請求。 請聯繫服務器管理員,[email protected]

我在哪裏出錯了?

感謝提前:)

+0

我覺得你並不需要安裝'passenger'。你有沒有讀過他們的文檔? https://my.bluehost.com/cgi/help/rails –

+0

我已經安裝乘客。我也嘗試過他們的文檔,但沒有爲我工作。 – swaroopsm

+0

apache錯誤和訪問日誌說什麼? – Bornfree

回答

1

嘿有你在你的httpd的conf文件檢查用戶&組? 請確保如果您在httpd conf中擁有用戶/組www-data,那麼您的項目目錄應該具有相同的所有者&組。

+0

我打算很快從林德購買VPS。 我對共享服務器並不滿意,因爲它不提供太多。 感謝您的回覆。 乾杯:) – swaroopsm

1

我也試圖做同樣的事情,但沒有成功,但是當我挖了一個深一點我想通了以下內容:

  • 在BlueHost的Apache服務器在不同的路徑使用的乘客。因此我們的安裝不會影響它。

  • Bluehost的Passenger3.x使用紅寶石1.8作爲默認的,因此紅寶石版本不能改變。

1

Check Bluehost什麼需要在.htaccess文件中。 礦看起來像這樣:

<IfModule mod_passenger.c> 
Options -MultiViews 
PassengerResolveSymlinksInDocumentRoot on 
#Set this to whatever environment you'll be running in 
RailsEnv production 
RackBaseURI /home/rails_apps/my_app 
SetEnv GEM_HOME /home/<my_bluehost_username>/ruby/gems 
</IfModule> 

,應使用此命令查找紅寶石寶石位置:

gem env 
相關問題