het Gebruik van IIS met URL Herschrijven als een reverse proxy

Als u wilt Grafana een subpad of een submap van een website in IIS dan de URL Rewrite module van het ISS kunnen worden gebruikt om dit te ondersteunen.

voorbeeld:

  • bovenliggende site: http://localhost:8080
  • Grafana: http://localhost:3000

Grafana als subpad: http://localhost:8080 / grafana

Setup

als u dit nog niet hebt gedaan, moet u de URL Rewrite-module voor IIS installeren.

download en installeer de URL Rewrite module voor IIS: https://www.iis.net/downloads/microsoft/url-rewrite

u hebt ook de Arr-module (Application Request Routing) voor IIS nodig voor proxy forwarding

ARR-module voor IIS downloaden en installeren: https://www.iis.net/downloads/microsoft/application-request-routing

Grafana Config

de Grafana config kan worden ingesteld door een bestand met de naam custom.ini aan te maken in de conf submap van uw Grafana installatie. Zie de installatie-instructies voor meer informatie.

gegeven dat het subpad grafana moet zijn en de bovenliggende site localhost:8080, voeg dit dan toe aan het custom.ini configuratiebestand:

domain = localhost:8080root_url = %(protocol)s://%(domain)s/grafana/

Herstart de Grafana server na het wijzigen van het configuratiebestand.

IIS Config

Proxy doorsturen

  1. Open het IIS-beheer en klik op de server
  2. in de beheerconsole voor de server, dubbelklik op de Routeringsoptie voor aanvragen van toepassingen:
  3. Klik op de Server Proxy Settings actie aan de rechterkant van het venster
  4. Selecteer de Enable proxy aanvinkt, zodat deze is ingeschakeld)
  5. Klik op Apply en ga verder met de URL Herschrijven configuratie

Opmerking: Als u niet inschakelen van de Forward Proxy, je zal waarschijnlijk 404 Niet Gevonden als je alleen van toepassing de URL Rewrite regel

URL Rewriting

  1. Open de IIS Manager en klik op de bovenliggende website
  2. In de admin console voor deze website, dubbel klik op de URL Rewrite optie:

  1. Klik op de Add Rule(s)... actie
  2. Kies de Blanco Regel sjabloon voor een Inbound Rule

  1. Maak een Inbound Rule voor de ouder website (localhost:8080 in dit voorbeeld) met de volgende instellingen:
  • patroon: grafana(/)?(.*)
  • controleer het Ignore case checkbox
  • herschrijven URL ingesteld op http://localhost:3000/{R:2}
  • controleer het Append query string checkbox
  • controleer het Stop processing of subsequent rules checkbox

navigeer tot slot naar http://localhost:8080/grafana (vervang http://localhost:8080 door uw bovenliggende domein) en u moet naar de Grafana login pagina komen.

probleemoplossing

404 fout

bij het navigeren naar de Grafana URL (http://localhost:8080/grafana in het voorbeeld hierboven) en een HTTP Error 404.0 - Not Found fout wordt geretourneerd dan ofwel:

  • het patroon voor de binnenkomende regel is onjuist. Bewerk de regel, klik op de Test pattern... knop, test het deel van de URL na http://localhost:8080/ en controleer of het overeenkomt. Voor grafana/login moet de test 3 vanggroepen opleveren: {R: 0}: grafana {R: 1}: / en {R: 2}: login.
  • de root_url instelling in het Grafana configuratiebestand komt niet overeen met de bovenliggende URL met subpad.

Grafana-Website toont alleen tekst zonder afbeeldingen of css

  1. de root_url instelling in het Grafana config bestand komt niet overeen met de bovenliggende URL met subpath. Dit kan gebeuren als de root_url per ongeluk wordt uitgecommentarieerd (; wordt gebruikt voor het becommentariëren van een regel in .ini-bestanden):

    ; root_url = %(protocol)s://%(domain)s/grafana/

  2. of als het subpad in de instelling root_url niet overeenkomt met het subpad dat wordt gebruikt in het patroon in de binnenkomende regel in IIS:

    root_url = %(protocol)s://%(domain)s/grafana/

    patroon in binnenkomende regel: wrongsubpath(/)?(.*)

  3. of als de herschrijven URL in de binnenkomende regel onjuist is.

    de herschrijven URL zou het subpad niet moeten bevatten.

    de herschrijven URL moet de capture-groep bevatten van het patroon dat het deel van de URL na het subpad retourneert. Het patroon hierboven geeft 3 capture groepen en de derde {R:2} geeft het deel van de URL na http://localhost:8080/grafana/.

You might also like

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.