Wie kann eine ASP.NET Core 2.1 Anwendung auf IIS gehostet werden?

Dieser Artikel soll kurz erkläre, wie eine ASP.NET Core 2.1 App auf IIS deployed bzw. gehostet werden kann. Das Hosting von ASP.NET Core 2.1 unterscheidet sich ein klein wenig vom Hosting in ASP.NET. Also, schauen wir uns das genauer an, Schritt-für-Schritt.

Wesentlich ist, in der Program Klasse in ASP.NET Core 2.1 befindet sich die Methode "CreateDefaultBuilder". Sie ist dafür zuständig, dass die Anwendung für Hosting, Managed Server, IIS Integration, Directory Erstellung etc. konfiguriert wird.

public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>

    WebHost.CreateDefaultBuilder(args)
      .UseStartup<Startup>();


Bevor die ASP.NET Core 2.1 Anwendung auf IIS deployed werden kann, müssen neue am Features am System installiert werden. Zunächst muss der IIS am System eingerichtet sein und weiters muss die .NET Core 2.1 Runtime installiert werden. Die Runtime kann unter dem folgenden Link bezogen werden: Runtime .NET Core 2.1

Um auf Nummer sicher zu gehen, sollte nach der erfolgreichen Installation der Runtime, das System neu gestartet werden. Anschließend kann in Visual Studio 2017, das ASP.NET Core 2.1 Projekt für das Hosting auf IIS vorbereitet werden.

Schritt 1: Rechtsklick auf das WebApplication Projekt und wählen Sie Publish


Schritt 2: Im darauf folgenden Fenster, wählen Sie den Ort, an dem die Webanwendung gepublisht werden soll und Bestätigen Sie mit Publish.


Wenn der Publish erfolgreich war, wird im Output Window eine Success Nachricht zur Bestätigung angezeigt.

Schritt 3: Nun ist es an der Zeit, unsere Webanwendung im IIS Manager anzulegen. Um den IIS Manager schnell starten zu können, kann das Tastenkürzel Windows Taste und danach inetmgr verwendet werden. Im IIS Manager kann mittels Rechte Maus Klick auf Sites im Menü links und Website hinzufügen..., eine neue Web Seite hinzugefügt werden. 



Schritt 4: Im nächsten Fenster muss ein Sitename, Hostname und der Physische Pfad der Anwendung angegeben werden. Den Port am Besten nicht ändern und schließlich mit OK bestätigen.


Schritt 5: Wir haben es fast geschafft. Es müssen noch weiters die Einstellungen im Anwendungspool angepasst werden. Dafür muss die .NET CLR-Version der App von .NET Framework auf Kein verwalteter Code gestellt werden, da im Hintergrund der Kestrel Webserver läuft.


Schritt 6: Ferner muss ein Eintrag für die Website in der hosts Datei gesetzt werden. Diese Datei findet sich normalerweise unter:

C:\Windows\System32\drivers\etc

Schritt 7: Abschließend muss noch die Berechtigung der Webanwendung entsprechend konfiguriert werden. In diesem Beispiel soll die Anonyme Authentifizierung aktiviert werden. Dafür Doppelklick auf die Website demo.ppedv.de im Verbindungen Menü links. Danach Doppelklick auf Authentifizierung und bei Anonyme Authentifizierung den Status auf Aktiviert setzten.


Die Website wird danch im Browser unter demo.ppedv.de angezeigt.

Ich hoffe dieser Schritt-für-Schritt Post hilft Ihnen beim Hosting & Deployment von ASP.NET Core 2.1 Anwendungen auf IIS.






Kommentare sind geschlossen