Placera appar som skapats i Blazor WebAssembly i IIS

Datum för skapande av sida :

miljö

Visuell studio
  • Visual Studio 2019
.NET
  • .NET 5.0
Internet Information Service (IIS)
  • IIS 10
  • annan
Distribueras till Windows Server
  • Windows Server 2019
  • annan

Först

Eftersom Blazor WebAssembly-programmet är en klient teknik kan den distribueras till en annan webbserver än IIS, men den här gången visar vi dig hur du publicerar projektet direkt till IIS. I grund och botten är ASP.NET nästan samma sak som att publicera ett Core-projekt, så låt oss fokusera på skillnaderna.

Installationsprogrammet för Windows Server

Anta att du har Windows Server installerat.

Det spelar ingen roll om versionen är lite gammal.

Installationsprogram för IIS

Detaljer beskrivs också på följande sida, så jag kommer inte att diskutera detaljerna.

Starta Serverhanteraren på Start-menyn.

Välj Lägg till roller och funktioner på administrationsmenyn.

Klicka på Nästa.

Klicka på Nästa.

Klicka på Nästa.

Välj Webbserver (IIS).

Följande skärm visas och klicka på knappen "Lägg till funktion".

Eftersom det inte finns något att lägga till i synnerhet, klicka på "Nästa".

Klicka på Nästa.

Lägg till en hanterad tjänst. Obligatoriskt att publicera direkt från Visual Studio.

Följande skärm visas och klicka på knappen "Lägg till funktion".

Klicka på Installera.

Startade IIS-hanteraren och verifierade att den innehåller "administrativa tjänster".

Installera webbdistribution

Krävs för att få ett publiceringsprogram från Visual Studio.

Gå till länken nedan.

Ladda ned.

Windows Server har bara en grundläggande 64-bitarsversion, så ladda ned 64-bitarsversionen.

Kör på Windows Server.

Klicka på Nästa.

Markera "Jag accepterar licensavtalet" och klicka på "Nästa".

Klicka på Fullständig.

Klicka på knappen "Installera".

När installationen är klar klickar du på knappen "Klar".

När du öppnar IIS Manager har du lagt till ombudshanteringstjänster.

Inställningar för programpool

Eftersom det är i syfte att bekräfta operationen kommer jag inte att ändra inställningen särskilt den här gången. Om du vill ställa in den, se följande sida.

Skapa en webbplats

Använd standardwebbplatsen från början för att verifiera dess funktion. Om du vill skapa separat läser du följande sida.

Användarrelaterade inställningar för distribution

Eftersom det är för att kontrollera operationen kommer den att placeras i ett Windows-konto utan att skapa något särskilt den här gången. Om du vill ställa in den, se följande sida.

Installera omskrivning av URL

Webbplatsen Blazor WebAssembly omdirigerar internt som standard, så installera omskrivning av URL. Hämta filen, så om Windows Server inte kan hämta den på grund av säkerhetsproblem laddar du ned den på en annan dator i förväg.

Besök följande webbplatser i webbläsaren:

Klicka på Installera det här tillägget. (Det är skrivet som installation, men det laddas faktiskt ner)

Kör den nedladdade "urlrewrite2.exe" på servern.

Installera den eftersom Web PI startar.

Välj Godkänn.

Webb-PI avslutas.

Distribuera program från Visual Studio

Gå tillbaka till arbetsdatorn och starta Visual Studio för att öppna blazor WebAssembly-projekt. Den här gången kommer vi att publicera ett program med ett nytt projekt skapat.

Högerklicka på projektet och välj Publicera.

Välj Webbserver (IIS) och klicka på Nästa.

Välj Webbdistribution.

Skriv följande:

Parameternamnvärde
server IP-adressen eller DNS-eller domännamnet för den server som konfigurerade IIS. Du kan ange antingen Internet eller intranätet.
Webbplatsnamn Anger det platsnamn som läggs till i IIS.
Till URL Det finns inga problem med tomt utrymme.
Användarnamn Anger användarkontot på Windows Server eller användarnamnet som du skapade i IIS.
lösenord Ange autentiseringslösenordet för användaren ovan.
Spara lösenord Om det är besvärligt att ange ett lösenord varje gång du publicerar sparar du det.

Den skapas som den visas.

Om du har skapat flera publiceringsprofiler kan du ändra dem i listrutan ovan, men om namnet är förvirrande kan du göra det.

Detaljerade inställningar kan ändras på redigeringsskärmen.

"Inställningar" väljs från den vänstra fliken. Du behöver inte göra några speciella ändringar, men ändra alternativen Konfiguration, Målkörning och Filpublicering efter behov.

"Anslut" väljs från den vänstra fliken. Du kommer att se vad du skrev först, men klicka på knappen "Verifiera anslutning" nedan.

Följande dialogruta visas när du kan ansluta till utgivaren. Markera Spara det här certifikatet för framtida sessioner i Visual Studio och klicka på knappen "Jag godkänner". Om du sparar visas den här dialogrutan bara för första gången.

Om en bock visas på höger sida av verifieringen av anslutningen kommer det att vara möjligt att ansluta normalt.

Förresten, om det misslyckas, klicka på länken för att kontrollera orsaken och vidta åtgärder beroende på orsaken.

Vanliga orsaker är:

  • Användarnamnet och lösenordet är felaktiga.
  • IIS tillåter inte användare. När undersökningsmetoden har distribuerats av en Windows-administratör.
  • Tcp 8172-brandväggen är inte tillåten. Moln som Azure tillåter det inte på molnsidan.
  • Webbdistributionsverktyget är inte installerat "fullständigt".
  • Iis saknas. Dubbelkolla dessa tips.

När du är klar klickar du på Lösning → Project → Egenskaper → PublishProfiles från Solution Explorer expandera och ange utgivningsnamnet ". pubxml", så det öppnas.

Project Lägg till och spara följande kod i PropertyGroup taggen >:

<AllowUntrustedCertificate>True</AllowUntrustedCertificate>

När du är klar publicerar du med publiceringsknappen.

Om du publicerar framgångsrikt är du klar. Det kan misslyckas ibland, så i så fall, vänligen utfärda det igen eller verifiera anslutningen.

När du har kommit åt den i en webbläsare och verifierat att blazors program fungerar är du klar.

Observera förresten att om du installerar det med PWA måste du ha HTTPS-kommunikation.

Om att installera .NET Runtime på Windows Server

Blazor WebAssembly är en klientteknik och behöver inte installeras på serversidan.

Detta krävs för Blazor Server, en annan blazor-mekanism.