[英]403 Forbidden when using nginx + rails + passenger
當我嘗試訪問在Nginx和passenger之上運行的rails應用程序時,我得到了403。 這是日志文件中的錯誤:
2013/05/09 13:52:34 [error] 27787#0: *1 directory index of "/var/www/Tread-Forth/current/public/" is forbidden, client: 192.249.16.60, server: treadforth.com, request: "GET / \
HTTP/1.1", host: "www.treadforth.com"
即使當我以root用戶身份運行nginx時,也會出現此問題,因此我認為這不是權限問題。 我認為問題在於我的nginx.conf文件中沒有定義passenger_ruby
或passenger_root
。 問題是,我不知道這些值在配置文件中的位置,也不知道它們的值應該是什么。 任何幫助都會很棒。 這是我的配置文件供參考:
worker_processes 1;
events {
worker_connections 1024;
}
http {
#passenger_root /usr/local/bin/passenger;
#passenger_ruby /usr/local/bin/ruby;
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name .treadforth.com;
root /var/www/Tread-Forth/current/public;
passenger_enabled on;
}
}
您可以看到我嘗試過的注釋掉的passenger_root和passenger_ruby版本。 當我取消注釋時,nginx無法啟動,但不會產生任何錯誤消息。
您可以檢查乘客的安裝與道路passenger-config --root
和Ruby安裝使用的路徑which ruby
。
要查找passenger_root的路徑:
$ passenger-config --root
要找到passenger_ruby的路徑,請運行以下命令,您會看到passenger_ruby路徑
$ passenger-config --ruby-command
禁止表示您有權限問題。 檢查您的目錄和文件權限,以便您的Web服務器可以讀取它們。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.