2011-02-24 15 views
2

我剛剛在Amazon EC2上用apache2和passenger設置了我的rails 3。重定向到rails 3中的子域名

一切都很好,但是當我在 /var/www/html/ror/public /中創建了我的第一個項目時,項目沒有顯示出來。我嘗試了mydomain.com/example這是我的項目的名稱,它給了我一個我之前生成的我的rails項目的索引。當我說索引我的意思是所有文件夾的列表,而不是從視圖中呈現任何HTML。我想我的問題是:我如何將用戶重定向到mydomain.com/example/app/views/example/index.html.erb

我試着玩弄httpd.conf,但似乎沒有任何結果。

感謝

回答

2

您在部署網站時遇到問題。按照此 -

  1. 創建一個虛擬主機

    $ sudo nano /etc/apache2/sites-available/app-name

  2. 更改虛擬主機的內容

    <VirtualHost *:80> 
        ServerName A.B.C.D 
        ServerAlias subdomain.abc.com 
        DocumentRoot /var/www/app-name/current/public 
        RackEnv production 
    </VirtualHost> 
    
  3. 啓用新的網站

    $ sudo a2ensite demo-app

  4. 重啓Apache

    $ sudo /etc/init.d/apache2 restart

請務必註明正確的文檔根目錄。

DocumentRoot /var/www/app-name/current/public 

更多細節 - https://docs.google.com/document/d/1Cw-oiE4AYrnbo_b7o593npTPaW8hRhRZERJ_ZETdrB8/edit?hl=en

+0

感謝您的反饋,我現在重做整個事情,我會讓你知道的。感謝您的時間\ – Geo 2011-02-25 04:14:11

+0

已修復,我的應用程序在開發模式下運行而不是生產。經典的錯誤,但仍然...感謝您的幫助脂肪酶 – Geo 2011-02-28 03:11:21

1

您需要添加RailsBaseURI /ror/public到你的Apache配置。

或者符號鏈接:

mkdir /var/rails 
mv /var/www/html/ror /var/rails 
cd /var/www/html 
ln -s /var/www/html/ror/public ror 

(不應該把Rails的在Apache文檔樹的應用程序源)

然後RailsBaseURI /ror

您的應用程序將在example.com/ror

+0

因爲即時通訊在所有這些新的可以請你更具體儘量RailsBaseURI/ROR它在哪裏確切地去在httpd.conf? – Geo 2011-02-24 03:02:00

+1

任何地方,但我通常創建一個單獨的文件 - 你可以把它放在/etc/apache2/conf.d/rails.conf(如果它不存在,創建它)。 – Satya 2011-02-24 10:42:48