ruby-on-rails - 403 Forbidden when using nginx + rails + Passenger

标签 ruby-on-rails ubuntu nginx passenger

当我尝试访问在 nginx 和乘客之上运行的 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 也会出现此问题,因此我认为这不是权限问题。我认为问题在于我没有 passenger_rubypassenger_root在我的 nginx.conf 文件中定义。问题是,我不知道这些值在配置文件中的位置,也不知道它们的值应该是什么。任何帮助都会很棒。这是我的conf文件供引用:
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;
    }
}

您可以看到我尝试过的乘客根和乘客 ruby 的注释掉版本。当我取消注释这些时,nginx 无法启动但不会产生任何错误消息。

最佳答案

您可以使用 passenger-config --root 检查您的乘客安装路径, 以及您的 ruby​​ 安装路径与 which ruby .

关于ruby-on-rails - 403 Forbidden when using nginx + rails + Passenger,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16473586/

相关文章:

ruby-on-rails - 如何在 linux 中轻松接收邮件并将其提供给 Rails?

ruby-on-rails - Rails 3.0.3 被认为是边缘吗?最新的稳定版本是什么?

linux - 启动时的节点 webkit 窗口管理器

ruby-on-rails - Rails 的 *_url 助手在生产中使用自定义(不是 80)端口。 (Nginx, unicorn )

linux - 尝试启动时 nginx 权限被拒绝

javascript - 如何检索 GET 请求内容的 flashvars?

ruby-on-rails - 用 Ruby 生成迷宫

Postgresql 不适用于 ubuntu 16.04

Ubuntu:卸载软件包后,它仍然存在

laravel - Homestead 和 NGINX 错误 : emerg] invalid number of arguments in "proxy_set_header"