1

我的 nginx.conf 文件使用的是 rails 指南中推荐的配置:

  server {
    listen       80;
    server_name  mysite.org;
    root /home/ec2-user/sites/mysite/production/current/public;

    location ~ ^/assets/ {
      expires 1y;
      add_header Cache-Control public;

      add_header ETag "";
      break;
    }

    location / {
      proxy_pass http://backend-mysite;
    }
  }

问题是对 css 和 js 编译文件的请求,如下所示:

http://mysite.org/assets/application-0230217054b1f5b5f386a270a526ceca.css

正在返回 403 状态。

我看了一下,我可以看到资产文件在 public/assets/

我的 nginx 配置有什么问题?

4

1 回答 1

1

弄清楚了。由于某种原因,我之前没有查看 nginx 错误日志。一旦我看到那里,我可以看到这些资产正在为它们获得“权限被拒绝”错误。我追查了这个问题,并且必须确保从根目录到资产文件位置的每个目录都有:

chmod +x

在上面。

于 2013-08-05T21:15:38.510 回答