Вопрос или проблема
Я новичок в Munin и Nginx. Я установил и настроил Munin и создал блок сервера Nginx. Я вижу главную страницу, сгенерированную munin, на которой перечислены различные узлы. Но когда я кликаю на хост, чтобы увидеть графики, я получаю только HTML-страницу без CSS и без графиков. Более точно, в веб-странице тот же HTML-код, CSS и даже в favicon.ico. И графики не загружаются (например, у меня нет 404).
Я следовал этому руководству.
Вот мой блок сервера Nginx:
server {
listen 80;
server_name munin.armagnac.[masked].com;
location ^~ /cgi-bin/munin-cgi-graph/ {
access_log off;
fastcgi_split_path_info ^(/cgi-bin/munin-cgi-graph)(.*);
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_pass unix:/var/run/munin/fcgi-graph.sock;
include fastcgi_params;
}
location /static/ {
alias /etc/munin/static/;
}
location / {
fastcgi_split_path_info ^(/munin)(.*);
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_pass unix:/var/run/munin/fcgi-html.sock;
include fastcgi_params;
}
}
У меня нет ошибок и ничего в логах.
Как было сказано выше, страница узла почти пустая:
CSS отсутствует, потому что любой другой ресурс – это просто та же HTML-страница:
Снова, в логах ничего нет и HTML и Graphs CGIs работают нормально. Но я не знаю, где проблема конфигурации, например, на стороне Nginx или в стороне Munin.
ОС: Ubuntu Server 15.04
У меня тоже была эта проблема, когда я настраивал munin.
редактировать
Что я сделал:
- Установил spawn-fcgi из исходников
- Настроил скрипт запуска для spawn-fcgi
- Убедился, что местоположение
/munin-cgi/munin-cgi-graph/
и/munin-cgi/munin-cgi-html/
перенаправлены на соответствующие процессы fcgi, запущенные с помощью spawn-fcgi.
Мой виртуальный хост, соответствующий раздел:
location /munin { # alias /var/cache/munin/www; index index.html; # include /etc/nginx/php.conf; # access_log off; allow 127.0.0.1; allow 192.168.0.0/16; deny all; } location ^~ /munin-cgi/munin-cgi-graph/ { # if ($uri ~ /munin-cgi/munin-cgi-graph/([^/]*)) { set $path $1; } fastcgi_split_path_info ^(/munin-cgi/munin-cgi-graph)(.*); fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_pass unix:/var/run/munin/fastcgi-munin-graph.sock; include fastcgi_params; } location ^~ /munin-cgi/munin-cgi-html/ { # if ($uri ~ /munin-cgi/munin-cgi-html/([^/]*)) { set $path $1; } fastcgi_split_path_info ^(/munin-cgi/munin-cgi-html)(.*); fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_pass unix:/var/run/munin/fastcgi-munin-html.sock; include fastcgi_params; }
Попробуйте мою настройку здесь:
https://serverfault.com/questions/670535/munin-nginx-no-dynazoom-into-graphs/745265#745265, где также включен скрипт инициализации.
Все работает хорошо для меня до сегодня
У меня была точно такая же проблема. Что мне помогло, так это изменение
location /munin/ {
alias /var/cache/munin/www/;
index index.html;
}
на
location ^~ /munin/ {
alias /var/cache/munin/www/;
index index.html;
}
Обратите внимание на ^~
. После изменения этого и перезагрузки Nginx все css и изображения начали загружаться корректно.
Ответ или решение
Решение проблемы с недоступностью CSS и графиков в Munin через Nginx
При использовании системы мониторинга Munin в связке с веб-сервером Nginx пользователь может столкнуться с проблемой, когда на странице хоста отсутствуют CSS-стили и графики. Вместо этого отображается пустая HTML-страница, что может вызывать замешательство у новых пользователей. В данной статье мы подробно разберем все аспекты настройки Munin и Nginx, чтобы устранить возникшие проблемы.
Анализ проблемы
Согласно вашему описанию, вы успешно установили и настроили Munin и Nginx. Вы видите индексную страницу Munin с перечислением различных узлов, однако при попытке открыть страницу с графиками отображается страница без стилей и графиков. Это может быть связано с неправильной конфигурацией Nginx, особенно в настройках для обработки CGI.
Неправильные настройки в конфигурации Nginx
Ваш блок сервера Nginx выглядит следующим образом:
server {
listen 80;
server_name munin.armagnac.[masked].com;
location ^~ /cgi-bin/munin-cgi-graph/ {
access_log off;
fastcgi_split_path_info ^(/cgi-bin/munin-cgi-graph)(.*);
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_pass unix:/var/run/munin/fcgi-graph.sock;
include fastcgi_params;
}
location /static/ {
alias /etc/munin/static/;
}
location / {
fastcgi_split_path_info ^(/munin)(.*);
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_pass unix:/var/run/munin/fcgi-html.sock;
include fastcgi_params;
}
}
Проблемы в конфигурации
-
Отсутствие корректного маршрута для статических ресурсов: Ваши настройки для
/static/
могут быть неправильно обработаны или не учитываться для правильного отображения, так как Munin обычно использует папку/var/cache/munin/www/
для своих статических файлов. -
Локации и алиасы: Убедитесь, что ваши локации правильно настроены. Важно, чтобы у вас была установлена правильная связь между URL и диспетчером FastCGI.
-
Использование
location ^~ /munin/
: Измените ваши настройки следующим образом, чтобы гарантировать правильное отображение всех ресурсов:
location ^~ /munin/ {
alias /var/cache/munin/www/;
index index.html;
allow 127.0.0.1;
allow 192.168.0.0/16;
deny all;
}
Важные моменты
-
Использование
allow
иdeny
: Эти директивы очень важны для безопасности вашего сервера. Убедитесь, что только выбранные вами IP-адреса могут получать доступ к страницам Munin. -
Проверка работы FastCGI: Убедитесь, что ваши сокеты FastCGI работают корректно. Если возникнут проблемы, вам, возможно, придется перезапустить соответствующие службы.
-
Логи Nginx: Проверьте журналы ошибок и доступа Nginx. Если они пусты, попробуйте временно увеличить уровень логирования с помощью
error_log /var/log/nginx/error.log debug;
для более детального анализа.
Примеры хорошо работающих конфигураций
В качестве дополнительного ресурса, вы можете ознакомиться с конфигурацией, предложенной на ServerFault или во вкладке с ответами на вашу изначальную проблему. Это даст вам представление о том, как другие пользователи решили схожие проблемы.
Заключение
Настройка Munin и Nginx может представлять собой вызов для новичков. Однако, следуя вышеуказанным рекомендациям, вы можете устранить проблемы с отображением графиков и CSS-стилей. Настоятельно рекомендую пересмотреть конфигурацию, убедиться в корректной работе всех сервисов и не забывать о безопасности вашего веб-сервера. Не забудьте протестировать изменения после их применения и осуществлять регулярное обновление ваших компонентов для повышения производительности и безопасности.