2013-03-08 104 views
0

我有一個rails應用程序,我想通過apache在默認端口80上運行。所以我設置了Passenger服務器,並配置了Apache配置文件。配置Passenger Server和Rails應用程序

我的應用程序所使用的默認端口3000上運行,我的routes.rb看起來是這樣的:

ScwCentral::Application.routes.draw do 
resources :smoke 
resources :regression 
..... 
.... 
..... 

這些是2個控制器在我的應用「煙」和「迴歸」。所以我的應用程序可以在localhost:3000/smoke和localhost:3000/regression之類的url上運行。

現在建立客運服務器和一切後,我編輯Apache的配置文件到這一點:

LoadModule passenger_module /usr/local/lib/ruby/gems/1.8/gems/passenger-3.0.19/ext/apache2/mod_passenger.so 
PassengerRoot /usr/local/lib/ruby/gems/1.8/gems/passenger-3.0.19 
PassengerRuby /usr/local/bin/ruby 

# Rails_App Virtual Host 

<VirtualHost *:80>                               
    ServerName www.mysite.com 
    # !!! Be sure to point DocumentRoot to 'public'! 
    DocumentRoot /a/rails_app_test/public/  
    <Directory /a/rails_app_test/public> 
    # This relaxes Apache security settings. 
    AllowOverride all 
    # MultiViews must be turned off. 
    Options -MultiViews 
    </Directory> 

其中「/ A/rails_app_test /」是我的應用程序的路徑

現在,當我去www.mysite.com它說

Routing Error 
No route matches [GET] "/" 

當我打開www.mysite.com我最好打開localhost:3000/smoke。我需要在配置文件中進行更多的更改嗎?

回答

1

您沒有根路由。舉例來說,如果你沒有

rails g controller welcome index

,然後加入

root :to => 'weclome#index'

你的根路徑/會顯示歡迎索引頁。

相關問題