Munin / Nginx - Nginx que precede o caminho da raiz para o arquivo, apesar do caminho diferente especificado com o alias

2

Eu instalei munin (por enquanto disponível aqui: link ) o problema é que, enquanto o núcleo carrega de / var / cache / munin / www - nenhum o carregamento de arquivos estáticos.

Eu tenho o seguinte na minha configuração do nginx:

    location /munin/static/ {
            alias /etc/munin/static/;
            expires modified +1w;
            autoindex on;
    }

    location /munin/ {
            #auth_basic            "Restricted";
            # Create the htpasswd file with the htpasswd tool.
            #auth_basic_user_file  /etc/nginx/htpasswd;

            alias /var/cache/munin/www/;
            expires modified +310s;
    }

O AutoIndex está lá para uma prova: a pasta está acessível: link

No entanto, clicar em um arquivo nessa pasta dá um erro 404, e o log de erros nginx mostra isso:

[error] 22570#0: *50 open() "/data/www/brailsford.xyz/munin/static/style-new.css" failed (2: No such file or directory)

/data/www/brailsford.xyz é a minha raiz especificada na cláusula geral do servidor.

Qualquer sugestão seria muito apreciada:)

EDIT 1:

    location ~* \.(js|css|png|jpg|jpeg|gif|ico|woff)$ {
            expires 1w;
    }
    
por AviateX14 11.03.2016 / 22:26

1 resposta

1

O bloco location ~* \.(js|css|png|jpg|jpeg|gif|ico|woff)$ tem precedência para qualquer URI que termine com .css , o que significa que nginx tenta usar o valor errado para root .

Use o modificador ^~ no prefixo location para torná-lo precedente sobre qualquer local regex.

Por exemplo:

location ^~ /munin/static/ { 
    ...
}

Isso pressupõe que o local não tenha nenhum conteúdo especial, como .php files.

Veja este documento para detalhes.

    
por 11.03.2016 / 23:08

Tags