J'ai configuré et démarré grafana par défaut et cela fonctionne comme prévu sur http: // localhost: 30 . J'essaie de le proxy avec nginx où j'ai installé SSL. J'essaie de le faire répondre à https: // localhost/grafana mais il sert juste ce qui suit:
{{alert.title}}
J'ai ceci dans mon bloc serveur nginx:
location /grafana {
proxy_pass http://localhost:3000;
proxy_set_header Host $Host;
}
Il semble que nginx supporte la réécriture des requêtes sur le serveur mandaté, donc la mise à jour de la configuration pour cela a fonctionné:
location /grafana {
proxy_pass http://localhost:3000;
rewrite ^/grafana/(.*) /$1 break;
proxy_set_header Host $Host;
}
Mon grafana.ini a également une racine mise à jour:
[server]
root_url = %(protocol)s://%(domain)s:%(http_port)s/grafana
En ajoutant à la réponse @ AX-Labs, vous n'avez pas besoin de réécrire l'URL.
nginx.conf
location /grafana/ {
proxy_pass http://localhost:3000/;
proxy_set_header Host $Host;
}
grafana.ini update root:
[server]
root_url = %(protocol)s://%(domain)s:%(http_port)s/grafana/
Remarquez le supplément/dans le bloc d'emplacement, qui fait toute la différence.
Si vous souhaitez voir l'intégralité du fichier, veuillez visiter https://Gist.github.com/mvadu/5fbb7f5676ce31f2b1e6 où j'ai la configuration du proxy Rever pour Infludb ainsi que grafana.
J'ai eu le même problème lors de l'utilisation de nginx et grafana sur docker, dans deux conteneurs différents. Passé les options suivantes pour docker-composer sur le service grafana, en suivant http://docs.grafana.org/installation/behind_proxy/#nginx-configuration-with-sub-path :
- GF_SERVER_DOMAIN=foo.bar.com
- GF_SERVER_ROOT_URL=%(protocol)s://%(domain)s:/grafana
Mais cela n'a pas fonctionné, et la console de mon navigateur affiche: net::ERR_CONTENT_LENGTH_MISMATCH
.
Donc, pour y remédier, j'ai ajouté la ligne suivante à ma configuration nginx:
location /grafana/ {
proxy_pass http://monitoring_grafana:3000/;
proxy_max_temp_file_size 0; # THIS MADE THE TRICK!
}
Pour info:
root_url = %(protocol)s://%(domain)s:%(http_port)s/grafana
provoque des erreurs de proxy pour certains appels d'API. Je trouve:
root_url = %(protocol)s://%(domain)s:/grafana