2014-12-04 205 views
4

我试图建立石墨根据这个项目在泊坞窗grafana工作:https://github.com/kamon-io/docker-grafana-graphitenginx的403禁止错误

,当我跑我的dockerfile我得到403 nginx的Forbidden错误。

我的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的......不知道是否有什么东西在的配置,我误解。

在此先感谢。

回答

8

这是因为您正在击中第一个位置块并找不到索引文件。

+0

啊我明白了。我只是看了/ src/grafana/dist,没有index.html。我假设我必须手动添加index.html文件? – 2014-12-04 21:26:41

2

对'/'的请求将在'/ src/grafana/dist'中查找'index.html'。确认: 1.'index.html'存在。 2.您拥有正确的权限。 nginx具有对整个目录树的读取访问权限,可导致'index.html'。也就是说,它必须能够读取目录的'src','src/grafana'和'src/grafana/dist'以及'index.html'本身。 为了达到这个目的,hacky quick-fix会做'sudo chmod -R 755/src',但我不推荐它。

+2

那么你推荐什么? – Superbest 2015-10-13 20:00:05