By Grafana Labs Team
Ostatnia aktualizacja w lutym 24, 2021
jeśli chcesz, aby Grafana była subpath lub podfolder pod stroną internetową w IIS, możesz użyć modułu przepisywania adresów URL dla ISS do obsługi tego.
przykład:
- Strona nadrzędna: http://localhost:8080
- Grafana: http://localhost:3000
Grafana jako subpath: http://localhost:8080/grafana
Setup
jeśli jeszcze tego nie zrobiłeś, wymaganiem jest zainstalowanie modułu przepisywania adresów URL dla usług IIS.
Pobierz i zainstaluj moduł przepisywania adresów URL dla usług IIS: https://www.iis.net/downloads/microsoft/url-rewrite
potrzebny będzie również moduł routingu żądań aplikacji (arr) dla usług IIS do przekazywania proxy
Pobierz i zainstaluj moduł ARR dla usług IIS: https://www.iis.net/downloads/microsoft/application-request-routing
Grafana Config
Grafana config można ustawić, tworząc plik o nazwie custom.ini w podkatalogu conf Twojej instalacji Grafana. Więcej informacji można znaleźć w instrukcji instalacji.
biorąc pod uwagę, że ścieżka podrzędna powinna być grafana, a Strona nadrzędna jest localhost:8080, dodaj to do pliku konfiguracyjnego custom.ini :
domain = localhost:8080root_url = %(protocol)s://%(domain)s/grafana/
po zmianie pliku konfiguracyjnego Uruchom ponownie serwer Grafana.
Konfiguracja usług IIS
przekaż Proxy
- Otwórz Menedżera usług IIS i kliknij serwer
- w konsoli administratora serwera kliknij dwukrotnie opcję routingu żądań aplikacji:
- kliknij działanie
Server Proxy Settingsw prawym okienku - zaznacz pole wyboru
Enable proxy, aby było włączone - kliknij
Applyi kontynuuj konfigurację przepisywania adresu URL
Uwaga: Jeśli nie włączysz Proxy Forward, najprawdopodobniej otrzymasz 404 Not Found, jeśli zastosujesz tylko adres URL reguła przepisywania
przepisywanie adresu URL
- otwórz Menedżera usług IIS i kliknij Stronę nadrzędną
- w konsoli administratora tej witryny Kliknij dwukrotnie opcję przepisywania adresu URL:

- kliknij na
Add Rule(s)...działanie - Wybierz szablon pustej reguły dla reguły przychodzącej

- Utwórz regułę przychodzącą dla witryny nadrzędnej (w tym przykładzie localhost:8080) z następującymi ustawieniami:
- wzór:
grafana(/)?(.*) - zaznacz pole wyboru
Ignore case - przepisz URL ustawiony na
http://localhost:3000/{R:2} - zaznacz pole wyboru
Append query string - zaznacz pole wyboru
Stop processing of subsequent rules

na koniec przejdź do http://localhost:8080/grafana(zastąp http://localhost:8080 domeną nadrzędną) i przejdź do strony logowania Grafana.
Rozwiązywanie problemów
404 błąd
podczas nawigacji do adresu URL Grafany (http://localhost:8080/grafana w powyższym przykładzie) i HTTP Error 404.0 - Not Found błąd jest zwracany, a następnie::
- wzór reguły przychodzącej jest nieprawidłowy. Edytuj regułę, kliknij przycisk
Test pattern..., przetestuj część adresu URL pohttp://localhost:8080/i upewnij się, że pasuje. Dlagrafana/logintest powinien zwrócić 3 grupy przechwytywania: {r:0}:grafana{R:1}:/i {R:2}:login. - ustawienie
root_urlw pliku konfiguracyjnym Grafana nie pasuje do nadrzędnego adresu URL ze ścieżką podrzędną.
strona Grafana pokazuje tylko tekst bez zdjęć i css

-
ustawienie
root_urlw pliku konfiguracyjnym Grafana nie pasuje do nadrzędnego adresu URL ze ścieżką podrzędną. Może się to zdarzyć, jeśli root_url zostanie skomentowany przez pomyłkę (;służy do komentowania linii w .pliki ini):; root_url = %(protocol)s://%(domain)s/grafana/ -
lub jeśli ścieżka podrzędna w ustawieniu
root_urlnie pasuje do ścieżki podrzędnej użytej we wzorcu w Regułie przychodzącej w usługach IIS:root_url = %(protocol)s://%(domain)s/grafana/wzór w regułach przychodzących:
wrongsubpath(/)?(.*) -
lub jeśli adres URL przepisania w regule przychodzącej jest nieprawidłowy.
adres URL Rewrite nie powinien zawierać ścieżki podrzędnej.
adres URL Rewrite powinien zawierać grupę przechwytywania z dopasowania wzorca, która zwraca część adresu URL po ścieżce podrzędnej. Powyższy wzorzec zwraca 3 grupy przechwytywania, a trzecia {R: 2} Zwraca część adresu URL po
http://localhost:8080/grafana/.