Linux

Nginx 有 fastcgi 權限問題,但文件是 owner:group nginx:nginx

  • June 25, 2020

執行一個 nginx 伺服器,並安裝了 munin 來監控其他機器上的一些服務。我正在關注這些文件以在 nginx 上安裝 munin cgi:https ://guide.munin-monitoring.org/en/stable-2.0/example/webserver/nginx.html#webserver-configuration

這一切看起來都很好,但是當訪問 serverip/munin 或 serverip/munin/static 時,我收到一個 502 bad gateway。日誌顯示:

020/06/25 16:28:36

$$ crit $$10503#0: 1 connect() to unix:/var/run/munin/fastcgi-html.sock 在連接到上游時失敗(13:權限被拒絕),客戶端:192.168.169.9,伺服器:網格,請求:“GET /munin/ HTTP/1.1”,上游:“fastcgi://unix:/var/run/munin/fastcgi-html.sock:”,主機:“192.168.169.6” 但是,/var/run/munin/fastcgi-.sock 是所有者 nginx 和組 nginx。

相關nginx配置如下:

   location ^~ /munin-cgi/munin-cgi-graph/ {
       fastcgi_split_path_info ^(/munin-cgi/munin-cgi-graph)(.*);
           fastcgi_param PATH_INFO $fastcgi_path_info;
           fastcgi_pass unix:/var/run/munin/fastcgi-graph.sock;
           include fastcgi_params;
   }

   location /munin/static/ {
           alias /etc/munin/static/;
   }

   location /munin/ {
           fastcgi_split_path_info ^(/munin)(.*);
           fastcgi_param PATH_INFO $fastcgi_path_info;
           fastcgi_pass unix:/var/run/munin/fastcgi-html.sock;
           include fastcgi_params;
   }

通常當 Nginx 報告權限問題時,這是相當清楚的,但是在這裡我看不到權限錯誤的地方。

ls -l /var/run/munin
total 4
srw-r----- 1 nginx nginx 0 Jun 25 16:28 fastcgi-graph.sock
srw-r----- 1 nginx nginx 0 Jun 25 16:27 fastcgi-html.sock
-rw-r--r-- 1 munin munin 4 Jun 25 15:25 munin-html.lock

任何想法將不勝感激。我正在執行另一個 munin 節點監控幾個盒子,但該設置是 apache。由於其他一些配置,此設置是 nginx。

更改權限/var/run/munin以允許 nginx 訪問 sock 文件。

chmod 750 /var/run/munin
chgrp nginx /var/run/munin

#重啟nginx

systemctl restart nginx

引用自:https://unix.stackexchange.com/questions/595113