Назад | Перейти на главную страницу

Munin / Nginx - Nginx добавляет корневой путь к файлу, несмотря на то, что другой путь указан с псевдонимом

Я установил munin (пока доступен здесь: http://brailsford.xyz/munin ) проблема в том, что пока ядро ​​загружается из / var / cache / munin / www - статические файлы не загружаются.

В моей конфигурации 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;
    }

AutoIndex служит доказательством: папка доступна: https://brailsford.xyz/munin/static/

Однако щелчок по файлу в этой папке дает 404, и журнал ошибок nginx показывает это:

[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 - это мой корень, указанный в общем разделе сервера.

Любые предложения будут ценны :)

РЕДАКТИРОВАТЬ 1:

    location ~* \.(js|css|png|jpg|jpeg|gif|ico|woff)$ {
            expires 1w;
    }

В location ~* \.(js|css|png|jpg|jpeg|gif|ico|woff)$ блок имеет приоритет для любых URI, которые заканчиваются на .css, которое значит что nginx пытается использовать неправильное значение для root.

Использовать ^~ модификатор префикса location чтобы он имел приоритет над любым местоположением регулярного выражения.

Например:

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

Это предполагает, что в локации нет специального содержания, например .php файлы.

Видеть этот документ для подробностей.