Megosztás a következőn keresztül:


Egyéni Application Gateway-hibalapok létrehozása

Az Application Gateway lehetővé teszi, hogy az alapértelmezettek megjelenítése helyett testreszabott hibaoldalakat hozzon létre. A különböző válaszkódokkal kapcsolatos hibákhoz használhatja a márkajelzést és az elrendezést. Az egyéni hibalapok beállításának néhány forgatókönyve a következő:

  • Az 502-ben hibás átjáró válaszkódjának karbantartási vagy állapotlapját jeleníti meg. Ez akkor hasznos, ha az application gateway nem rendelkezik háttérkiszolgálóval a forgalom átirányításához ütemezett karbantartás vagy a háttérkészlet-kiszolgálók váratlan problémája során.
  • A 403 Tiltott válaszkód testreszabott jogosulatlan hozzáférési lapjának megjelenítése, amely akkor fordul elő, ha a WAF megelőzési módban van, és blokkolja a rosszindulatú forgalmat.
  • Céges arculatú oldal megjelenítése, probléma esetén kapcsolattartási adatokkal.

Támogatott válaszkódok

Az egyéni hibalapok a következő válaszkódokhoz támogatottak:

Válaszkód Leírás
400 Hibás kérés (előzetes verzióban)
403 Forbidden
405 A metódus nem engedélyezett (előzetes verzióban)
408 Kérelem időtúllépése (előzetes verzióban)
500 Belső kiszolgálóhiba (előzetes verzióban)
502 Rossz átjáró
503 A szolgáltatás nem érhető el (előzetes verzióban)
504 Átjáró időtúllépése (előzetes verzióban)

Megjegyzés:

  • Az API 2022-09-01-es vagy újabb verzióját kell használni az új válaszkódok hibaoldalainak konfigurálásához (előzetes verzióban).
  • A 404-s válaszkód (az oldal nem található) jelenleg nem támogatott.
  • Az Egyéni hibalapok megjelennek az Application Gateway által létrehozott válaszkódokhoz. Ha egy hiba a háttérkiszolgálóról származik, a rendszer nem módosítottan továbbítja azt az ügyfélnek.

Konfigurációs szintek

Az egyéni hibalapok globális vagy figyelőszinten definiálhatók:

  • Globális szint – A globális szinten beállított hibalapok az adott application gateway összes figyelőjén érvényesek lesznek. Az Azure Portalon keresztüli konfigurációja jelenleg nem támogatott.
  • Figyelőszint – A figyelő szintjén található hibalapok részletes vezérlést adnak a figyelő által kiszolgált alkalmazások hibaoldalainak beállításához.

Megjegyzés:

Ha globális és figyelőszintű hibaoldalak kombinációját használja egy átjáróhoz, explicit módon meg kell említenie az adott figyelőhöz tartozó összes kívánt válaszkód URL-címét. A figyelőspecifikus konfiguráció felülbírálja az adott figyelőre vonatkozó összes korábbi globális konfigurációt.

Requirements

Egyéni hibalap létrehozásához

  • ismerje meg azt a válaszkódot, amelyhez egyéni hibaoldalra van szükség.
  • a HTML-oldal megfelelő távoli helyének (URL-címének) ismerete. Ennek nyilvánosan elérhető fájlnak kell lennie.
  • győződjön meg arról, hogy a hibaoldal nyilvánosan elérhető, és 200-ra adott választ ad vissza.
  • győződjön meg arról, hogy a hibaoldalnak *.htm vagy *.html kiterjesztésűnek kell lennie.
  • győződjön meg arról, hogy az oldal mérete kisebb, mint 1 MB.

Ehhez a HTML-fájlhoz belső vagy külső rendszerképekre/CSS-ekre is hivatkozhat. Külsőleg hivatkozott erőforrások esetén nyilvánosan elérhető abszolút URL-címeket használjon. Ügyeljen a HTML-fájl méretére base64 kódolású beágyazott rendszerképek, JavaScript vagy CSS használatakor.

Megjegyzés:

  • Az Azure-ökoszisztémában egy Azure Blob Storage-fiókot vagy virtuális gépet kell használnia egy hibaoldal üzemeltetéséhez. Vegye figyelembe, hogy a Blob Storage-nak közvetlenül elérhetőnek kell lennie, mivel az Azure CDN-szolgáltatások által megnyitott tárfiókok jelenleg nem támogatottak.
  • Dönthet úgy is, hogy a hibaoldalakat bármely távoli helyen üzemelteti.
  • A relatív hivatkozások nem támogatottak.

Hogyan működik?

Miután megadott egy hibalapot az Application Gateway konfigurációjában, az átjáró ellenőrzi a HTML-laphoz való internetkapcsolatot az interneten keresztül. Ezután letölti a fájlt a helyi gyorsítótárba.

Ha egy ügyfél hibát tapasztal, az Application Gateway egy válaszkódot és egy HTML-lapot ad vissza. A külsőleg hivatkozott erőforrásokat (például képeket, JavaScript- és CSS-fájlokat) közvetlenül az ügyfél olvassa be.

Az application gateway nem ellenőrzi rendszeresen a forrásfájl helyét egy új verzió lekéréséhez. Az átjárón bármilyen konfigurációfrissítést végrehajthat a fájl gyorsítótárának manuális frissítéséhez. Például módosítsa a hiba URL-címét az 1. oldalról a 2. oldalra, majd térjen vissza az 1. oldalra, vagy új figyelő hozzáadásakor.

Portálkonfiguráció

A figyelőspecifikus egyéni hibalapok konfigurálásához szükséges lépések:

  1. Lépjen az Application Gatewayre a portálon, és válassza ki a szükséges erőforrást.

  2. Válassza a Figyelők lehetőséget, és keresse meg azt a figyelőt, amelyhez hibalapot szeretne megadni.

  3. Az Egyéni hibalapok szakaszban adja meg a nyilvánosan elérhető URL-címeket a szükséges állapotkódokhoz.

  4. Válassza a Mentés parancsot.

    Screenshot of Application Gateway custom error page.

Azure PowerShell-konfigurálás

Az Azure PowerShell használatával egyéni hibalapot konfigurálhat. Például egy globális egyéni hibalap:

$appgw   = Get-AzApplicationGateway -Name <app-gateway-name> -ResourceGroupName <resource-group-name>

$updatedgateway = Add-AzApplicationGatewayCustomError -ApplicationGateway $appgw -StatusCode HttpStatus502 -CustomErrorPageUrl "http://<website-url>"

Set-AzApplicationGateway -ApplicationGateway $appgw

Vagy egy figyelőszintű hibalap:

$appgw   = Get-AzApplicationGateway -Name <app-gateway-name> -ResourceGroupName <resource-group-name>

$listener01 = Get-AzApplicationGatewayHttpListener -Name <listener-name> -ApplicationGateway $appgw

$updatedlistener = Add-AzApplicationGatewayHttpListenerCustomError -HttpListener $listener01 -StatusCode HttpStatus502 -CustomErrorPageUrl "http://<website-url>"

Set-AzApplicationGateway -ApplicationGateway $appgw

További információ: Add-AzApplicationGatewayCustomError and Add-AzApplicationGatewayHttpListenerCustomError.

További lépések

Az Application Gateway diagnosztikával kapcsolatos információkért tekintse meg az Application Gateway háttérállapotát, diagnosztikai naplóit és metrikáit.