Dela via


Fel när du surfar på webbplatsen via standardadressen för molntjänstdomänen: HTTP-fel 503. Tjänsten är inte tillgänglig

Den här artikeln innehåller information om felsökningsproblem där du får felet "HTTP-fel 503. Tjänsten är inte tillgänglig." vid åtkomst till molntjänstprogrammet.

Ursprunglig produktversion: API Management Service
Ursprungligt KB-nummer: 4464854

Kommentar

I artikeln om felsökningsserien för Azure Cloud Service är det här det femte scenariot i labbet. Kontrollera att du har följt instruktionerna för labbkonfiguration för Super Convertor-programmet enligt detta för att återskapa problemet.

Symptom

Du får HTTP-fel 503-svar när du bläddrar i url:en för molntjänstprogrammet (http://cloudservicelabs.cloudapp.net/), även om webbrollen "SuperConvertor" är i körningstillstånd. Att starta om eller ändra storlek på rollinstansen löser inte problemet.

Tjänsten är inte tillgänglig

HTTP-fel 503. Tjänsten är inte tillgänglig.

Felsökningsanvisningar

När du får 50x-fel i ditt program innebär det vanligtvis att något är trasigt på serversidan. 503 Service Unavailable svarskoden för serverfel anger att servern inte är redo att hantera begäran. Du måste tänka på varför plötsligt ett nyligen distribuerat molntjänstprogram plötsligt började utlösa det här felet. Kraschar programmet? Når begäran IIS-servern? Är servern under hög belastning?

Kontrollera först den lokala IIS-servern. Du kan ansluta till webbrollsinstansen med RDP och bläddra i programmet lokalt. Innan du surfar på webbplatsen lokalt kontrollerar du loggboken för program och system för att ta bort alla möjligheter till att IIS ApplicationPool kraschar eller andra programrelaterade undantag.

Kontrollera sedan IIS-loggarna som finns under C:\Resources\directory\{Deployment ID}.SuperConvertor.DiagnosticStore\LogFiles\Web för att kontrollera om du kan få mer information om HTTP 503-felet som kod för understatus, hur mycket tid det tar att köra begäran och så vidare.

Om inga loggar genereras innebär det att begäran inte når IIS alls. Enligt IIS-arkitekturen lyssnar HTTP.sys efter HTTP-begäranden från nätverket, skickar begäranden till IIS för bearbetning och returnerar sedan bearbetade svar till klientwebbläsare. Som standard tillhandahåller IIS HTTP.sys som protokolllyssnare som lyssnar efter HTTP- och HTTPS-begäranden och eventuella fel på HTTP.sys nivå loggas i den här katalogen – D:\Windows\System32\LogFiles\HTTPERR. Så låt oss se vad vi kan hitta i HTTPErr-loggen:

#Software: Microsoft HTTP API 2.0
#Version: 1.0
#Date: 2018-08-13 03:12:38
#Fields: date time c-ip c-port s-ip s-port cs-version cs-method cs-uri streamid sc-status s-siteid s-reason s-queuename
2018-08-13 03:25:22 293.217.138.127 12052 10.1.2.5 80 HTTP/1.1 GET / - 503 - N/A -
2018-08-13 03:25:22 293.217.138.127 20463 10.1.2.5 80 HTTP/1.1 GET /favicon.ico - 503 - N/A -

Om du ser loggen ovan genereras HTTP 503 från HTTP.sys nivå och klientbegäran avvisas därifrån utan att nå IIS. Nu ska vi bläddra på webbplatsen lokalt från IIS och se vad som händer – Du kan få ett fel – Den här sidan kan inte visas. En sak som du kanske märker är att IIS-webbplatsen hade en bindning som nedan, vilket innebär att du måste komma åt den här webbplatsen via det anpassade domännamnet (www.cloudservicelabs.com)

IP-adress Port Värdrubrik
10.1.2.5 80 www.cloudservicelabs.com

Webbplatser nås av varje klient med bindningar. En typisk bindning för webbplatser är i form av IP:Port:HostHeader. Det är en mekanism som talar om för servern hur den här webbplatsen kan nås. Nästa fråga som du kommer att tänka på är varifrån det här anpassade värdnamnet kommer ifrån.

ServiceDefinition.csdef är den plats där du kan konfigurera bindningar för din webbroll, och här är vad du kan se för ditt program:

<WebRole name="SuperConvertor" vmsize="Standard_D1_v2">
<Sites>
<Site name="Web">
<Bindings>
<Binding name="Endpoint1" endpointName="Endpoint1" hostHeader="www.cloudservicelabs.com"/></Bindings>
</Site>
</Sites>

För att få åtkomst till molntjänstprogrammet via ett anpassat värdnamn i verkligheten måste du ha en DNS konfigurerad för värdhuvudet som motsvarar molntjänstens VIP. För tillfället kan du ta bort attributet hostHeader från bindningselementet och distribuera om molntjänstlösningen för att lösa problemet.

Kontakta oss för att få hjälp

Om du har frågor eller behöver hjälp skapar du en supportförfrågan eller frågar Azure community support. Du kan också skicka produktfeedback till Azure-feedbackcommunityn.