2012-05-06 41 views
0

我們正在設置一個nginx網絡服務器,以允許/ suburi在我們的rails 3.1應用程序中訪問(例如訪問URL:http://www.railapp.com/subdomain)。這裏的subrui名字是byop。我們的rails文檔root子目錄位於/ var/www /。 suburi byop在/ var/www/byop。下面是我們成功的軌道部署後所做的:如何設置nginx以允許在Ubuntu 12.04上使用/ suburi進行訪問?

  1. 設置的nginx.conf:

    服務器{ 聽80; server_name 154.248.209.181; root/var/www /; passenger_enabled on; rails_env製作; passenger_base_uri/byop; }

  2. 創建在/ var/WWW符號鏈接如下:

    LN -s /無功/網絡/ byop /電流/公共的/ var/WWW/byop

nginx的是停止並重新啓動。然而,403 Forbidden頁面顯示爲http://154.248.209.181/byop

我們檢查了/ var/www下的符號鏈接,並且沒有鏈接列出(只有byop子目錄)。這裏是ls -li的輸出:

[email protected]:/var/www$ ls -li 
total 4 
9296 drwxrwsr-x 4 ubuntu www-data 4096 May 6 03:12 byop 

我們上面的設置有什麼問題?非常感謝。

回答

1

我們發現的問題是用第2步創建符號鏈接。 subdir的名稱和符號鏈接的名稱是相同的。使用不同的符號鏈接名稱後,問題就解決了。這裏是工作副本:

1. Setup the nginx.conf: 

server { 
    listen 80; 
    server_name 154.248.209.181; 
    root /var/www/; 
    passenger_enabled on; 
    rails_env production; 
    passenger_base_uri /by; 
} 

2. Create symlink under /var/www as following: 

ln -s /var/www/byop/current/public /var/www/by 

然後http://154.248.209.181/by調出頁面。

+0

符號鏈接是要走的路 –

相關問題