目录索引“...”被禁止
我试图让Phusion乘客和nginx在Mac OSX上运行。 这非常困难。
我完全按照这里的指示。
$ brew install nginx --with-passenger
$ brew info nginx --with-passenger
然后它告诉我这一点:
要激活Phusion Passenger,请将其添加到/usr/local/etc/nginx/nginx.conf,在'http'上下文中:
passenger_root /usr/local/opt/passenger/libexec/src/ruby_supportlib/phusion_passenger/locations.ini; passenger_ruby / usr / bin / ruby;
有趣的是,这不是我的网站使用的红宝石。 我使用rvm并生成了一个.versions.conf
文件:
rvm --create --versions-conf use ruby-2.1.2@core
因此,当你cd到我的根站点的文件夹,你会得到以下内容:
$ rvm-prompt
ruby-2.1.2@core
所以这就是我添加到nginx.conf中的内容:
http {
...
passenger_root /usr/local/opt/passenger/libexec/src/ruby_supportlib/phusion_passenger/locations.ini;
passenger_ruby /Users/dviglione/.rvm/gems/ruby-2.1.2@core/wrappers/ruby;
请注意,当我运行passenger-config时,它确实为locations.ini提供了另一个位置:
$ /usr/local/bin/passenger-config --root
/usr/local/Cellar/passenger/5.0.26/libexec/src/ruby_supportlib/phusion_passenger/locations.ini
我不知道哪个位置是正确的,但我坚持在安装过程中提供的位置。 如果我更改了其他位置,则会遇到不同的问题:“无法访问此网站”。
在nginx.conf中,我的服务器块如下所示:
server {
rack_env development;
listen 8080;
server_name mysite_development;
root /Users/myuser/projects/core;
access_log /Users/myuser/projects/core/log/nginx_access.log;
error_log /Users/myuser/projects/core/log/nginx_error.log;
passenger_enabled on;
}
我将以下内容添加到/ etc / hosts中:
127.0.0.1 mysite_development
255.255.255.255 broadcasthost
::1 localhost
fe80::1%lo0 localhost
根目录具有以下权限:
$ ls -ld core
drwxr-xr-x 37 myuser CORPDomain Users 1258 Oct 14 18:45 core
但是,当我导航到http:// mysite_development:8080 /时,在我的nginx错误日志中出现以下错误:
2016/10/14 18:52:23 [error] 90766#0:* 1目录索引为“/ Users / myuser / projects / core /”,客户端:127.0.0.1,server:mysite_development,request:“GET / HTTP / 1.1“,主机:”mysite_development:8080“
问题不在于nginx本身,因为我创建了一个测试文件夹,并在其中放置了一个index.html,然后为它创建了一个服务器块,并在浏览器中成功显示了index.html。 所以问题是无论是乘客还是Rails。
请注意,如果我将其添加到服务器块:
location / {
root html;
index index.html index.htm;
}
然后我得到'Welcome to nginx!' 页。
我甚至在整个目录及其Rails应用程序的文件上递归地chmod 777
。 仍然得到403 Forbidden错误。 它必须是乘客的问题。
我该如何解决这个问题?
您需要使用Passenger文档中描述的passenger_app_root
指令明确指定Rails应用程序的实际Ruby代码的位置。
更多细节在我的完整答案。
链接地址: http://www.djcxy.com/p/32493.html