2016-05-26 63 views
0

我已經用nginx和passenger創建了一個rails項目。嘗試訪問該網站時,我得到了403。這是在/etc/nginx/sites-enabled/mysite.com我的配置文件:Nginx 403:禁止「/ home/deploy/MyApp/current/public /」的目錄索引

server { 
     listen 80; 

     server_name www.mysite.com *.mysite.com; 
     passenger_enabled on; 
     rails_env production; 
     root /home/deploy/mysite/current/public; 
     index index.html index.htm; 

     #try_files $uri; 

     # redirect server error pages to the static page /50x.html 
     error_page 500 502 503 504 /50x.html; 

     location/{ 
       try_files $uri $uri/ /index.html; 
     } 

     location = /50x.html { 
      root html; 
     } 

} 

passenger_rootpassenger_rubynginx.conf設置是否正確。我將寫入/讀取的應用程序的根/根/電流和根/的權限電流/公共文件夾nginx用戶。

任何想法? Thx提前。

+0

你的錯誤說nginx試圖獲取一個目錄列表,這意味着它不會試圖渲染任何rails提供的東西。打開乘客後是否重新啓動了nginx? – xyious

+0

還將mysite.com添加到server_name(您有* .mysite.com,我不確定是否適用於空的子域名。 – xyious

+0

@xyious我已將mysite.com添加到server_name。關於乘客,可能是這樣,但應該 – Majoren

回答

0

你需要指定這兩個選項以及

passenger_root /usr/local/rvm/gems/ruby-1.9.2-p290/gems/passenger-3.0.9; 
passenger_ruby /usr/local/rvm/wrappers/ruby-1.9.2-p290/ruby; 

您可以

which ruby 

passenger-config --root 

和Ruby版本檢查乘客的安裝路徑比較這些輸出與您指定的內容。

+0

我已經按照你的描述設置了所有這些東西。我得到了一個被nginx拒絕的403權限,所以在我看來,它是nginx的問題。 – Majoren