nginx 403 禁止错误
Posted
技术标签:
【中文标题】nginx 403 禁止错误【英文标题】:nginx 403 Forbidden error 【发布时间】:2015-02-02 22:04:00 【问题描述】:我正在尝试基于此项目在 docker 中设置石墨以与 grafana 一起使用:https://github.com/kamon-io/docker-grafana-graphite
当我运行 dockerfile 时,我收到 403 Forbidden nginx 错误。
我对nginx的配置和项目的配置几乎一样。我在服务器上运行我的 dockerfiles 并在我的 Windows 机器上测试它们。所以配置并不完全相同......例如我有:
server
listen 80 default_server;
server_name _;
location /
root /src/grafana/dist;
index index.html;
location /graphite/
proxy_pass http:/myserver:8000/;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header Host $host;
client_max_body_size 10m;
client_body_buffer_size 128k;
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 90;
proxy_buffer_size 4k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
add_header Access-Control-Allow-Origin "*";
add_header Access-Control-Allow-Methods "GET, OPTIONS";
add_header Access-Control-Allow-Headers "origin, authorization, accept";
但我仍然不断收到 403 禁止。检查 nginx 的错误日志说:
directory index of "/src/grafana/dist/" is forbidden
停止并再次运行它说:
directory index of "/src/grafana/dist/" is forbidden
我对 nginx 很陌生...想知道配置中是否有一些我误解的东西。
提前致谢。
【问题讨论】:
【参考方案1】:那是因为你点击了第一个位置块并且没有找到索引文件。
【讨论】:
啊,我明白了。我只是查看了 /src/grafana/dist 并没有 index.html。我假设我必须手动添加 index.html 文件?【参考方案2】:对“/”的请求将在“/src/grafana/dist”中查找“index.html”。
确认: 1. 'index.html' 存在。 2. 你有正确的权限。 nginx 可以读取通向“index.html”的整个目录树。也就是说,它必须能够读取目录 'src'、'src/grafana' 和 'src/grafana/dist' 以及 'index.html' 本身。 实现此目的的 hacky 快速修复方法是执行 'sudo chmod -R 755 /src',但我不建议这样做。
【讨论】:
那么你推荐什么做?以上是关于nginx 403 禁止错误的主要内容,如果未能解决你的问题,请参考以下文章