So konfigurieren, installieren und stellen Sie ASP.NET Core für IIS bereit

ASP.NET Core ist ein kostenloses und zusammensetzbares Framework zum Erstellen von Web-Apps. Es ist Open Source und völlig kostenlos. Sie können es auf Github erhalten. Das modulare Framework schneidet deutlich besser ab als ASP.NET. In diesem Artikel finden Sie die vollständige Anleitung zum Konfigurieren, Installieren und Bereitstellen für IIS.

Konfigurieren Ihrer ASP.NET Core-App für IIS

Wenn Sie einen neuen ASP.NET Core erstellen, sehen Sie eine Program.cs-Datei mit den folgenden Codes:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
publicclassProgram
{
publicstaticvoidMain ( string [] args )
{
var host = new WebHostBuilder ()
. VerwendenKestrel ()
. UseContentRoot ( Directory. GetCurrentDirectory ())
. UseIISIntegration ()
. UseStartup ()
. Bauen () ;
Gastgeber. Laufen () ;
}
}
publicclassProgram
{
publicstaticvoidMain(string[] args)
{
var host = new WebHostBuilder()
.UseKestrel()
.UseContentRoot(Directory.GetCurrentDirectory())
.UseIISIntegration()
.UseStartup()
.Build();

host.Run();
}
}

publicclassProgram
{
    publicstaticvoidMain(string[] args)
    {
        var host = new WebHostBuilder()
            .UseKestrel()
            .UseContentRoot(Directory.GetCurrentDirectory())
            .UseIISIntegration()
            .UseStartup()
            .Build();

        host.Run();
    }
}

Hier konfiguriert und erstellt WebHostBuilder WebHost, bei dem es sich im Grunde um ein Objekt handelt, das als Anwendung und Webserver fungiert. UseKestrel() registriert die IServer-Schnittstelle für Kestrel, einen plattformübergreifenden Webserver. Hier fungiert IServer als Host für Ihre App. Durch die Einbeziehung von UseIISIntegration() verwenden Sie IIS als Reverse-Proxy vor Kestrel.

Das Erstellen eines ASP.NET Core-Projekts führt auch zur Erstellung einer web.config-Datei. Es sieht aus wie das:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
< ?xml version= « 1.0 » kodierung= « utf-8 » ? >
<Konfiguration>
< System. webServer >
< Handler >
< add name= „aspNetCore“ path= „*“ verb= „*“ module= „AspNetCoreModule“ resourcesType= „Unspecified“ / >
< /handlers >
< aspNetCore processPath= « %LAUNCHER_PATH% » arguments= « %LAUNCHER_ARGS% » stdoutLogEnabled= « false » stdoutLogFile= « .logsstdout » forwardWindowsAuthToken= « false » / >
< /system. webServer >
< /configuration >
<?xml version= »1.0″ encoding= »utf-8″?>
<configuration>
<system.webServer>
<handlers>
<add name= »aspNetCore » path= »* » verb= »* » modules= »AspNetCoreModule » resourceType= »Unspecified »/>
</handlers>
<aspNetCore processPath= »%LAUNCHER_PATH% » arguments= »%LAUNCHER_ARGS% » stdoutLogEnabled= »false » stdoutLogFile= ».logsstdout » forwardWindowsAuthToken= »false »/>
</system.webServer>
</configuration>
<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.webServer>
    <handlers>
      <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified"/>
    </handlers>
    <aspNetCore processPath="%LAUNCHER_PATH%" arguments="%LAUNCHER_ARGS%" stdoutLogEnabled="false" stdoutLogFile=".logsstdout" forwardWindowsAuthToken="false"/>
  </system.webServer>
</configuration>

Im Grunde registriert es AspNetCoreModule, das den gesamten eingehenden Datenverkehr an IIS verarbeitet, als HTTP-Handler. Es funktioniert auch als Reverse-Proxy-Server. Aber was noch wichtiger ist: AspNetCoreModule ist für die erfolgreiche Ausführung Ihrer Web-App verantwortlich.

Installieren des .NET Core Windows Server-Hostingpakets

Sie können .NET Core Windows Server hier herunterladen . Sie müssen es installieren, bevor Sie Ihre Web-App bereitstellen. Gleichzeitig werden auch die .NET Core-Laufzeitumgebung, die Bibliotheken und das ASP.NET Core-Modul installiert. Dann müssen Sie möglicherweise den folgenden Befehl in der Eingabeaufforderung ausführen:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
Nettostopp war /y
net stop was /y
net stop was /y

Dadurch werden der IIS-Verwaltungsdienst und alle anderen relevanten Dienste gestoppt. Führen Sie nun diesen Befehl aus:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
net start w3svc
net start w3svc
net start w3svc

Dadurch werden die IIS-Dienste gezwungen, die Registrierung erneut zu lesen. Dadurch werden alle Änderungen für den erweiterbaren Webserver übernommen.

Bereitstellen von ASP.NET Core für IIS

Schritt 1: Wählen Sie ein Veröffentlichungsziel

Schritt 2: Kopieren Sie Ihre Veröffentlichungsausgabe an Ihren bevorzugten Speicherort

Jetzt müssen Sie die Dateien an den gewünschten Speicherort kopieren. In unserem Fall kopieren wir sie hier:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
C:inetpubwwwrootAspNetCore46
C:inetpubwwwrootAspNetCore46
C:inetpubwwwrootAspNetCore46

Wenn Sie die Bereitstellung auf einer lokalen Entwicklungsbox durchführen, haben Sie die Möglichkeit, die Dateien lokal zu kopieren. Im Falle des Remote-Servers sollten Sie diese jedoch komprimieren und dann auf den Server verschieben.

Schritt 3: Erstellen Sie einen neuen Anwendungspool in IIS

Erstellen Sie einen neuen IIS-Anwendungspool unter der .NET CLR-Version von „No Managed Code“. Erstellen Sie dann Ihre neue IIS-App unter Ihrer aktuellen IIS-Site. Sie können auch eine neue IIS-Site erstellen. Zeigen Sie dann auf den Ordner, der die Dateien Ihrer Veröffentlichungsausgabe enthält.

Schritt 4: Laden Sie Ihre Bewerbung

In diesem Schritt sollte Ihre Anwendung einwandfrei funktionieren. Wenn dies jedoch nicht der Fall ist, öffnen Sie Ihre web.config-Datei und geben Sie den Prozess für IIS an, der ASP.NET Core initiiert. Aktivieren Sie außerdem die Protokollierung, indem Sie stdoutLogEnabled  auf true setzen . Damit können Sie auf die Protokolle zugreifen, das Problem identifizieren und eine Lösung erstellen.

Abschluss

In diesem Artikel haben Sie die detaillierte Vorgehensweise zum Konfigurieren, Installieren und Bereitstellen von ASP.NET Core für IIS kennengelernt. Durch die Verwendung des erweiterbaren Webservers zum ASP.NET Core-Hosting genießen Sie ein zusätzliches Maß an Konfigurierbarkeit und Sicherheit.

Schauen Sie sich diese Top 3 WordPress-Hosting-Dienste an:

A2-Hosting
4.7

1.886 Nutzerbewertungen

2,99 $ /Monat
Startpreis

Besuchen Sie A2 Hosting

Bewertung basierend auf Expertenbewertung
  • Benutzerfreundlich
    4.5
  • Unterstützung
    4,0
  • Merkmale
    4.5
  • Zuverlässigkeit
    4.8
  • Preisgestaltung
    4,0
Hostinger
4.6

2.435 Nutzerbewertungen

2,99 $ /Monat
Startpreis

Besuchen Sie Hostinger

Bewertung basierend auf Expertenbewertung
  • Benutzerfreundlich
    4.7
  • Unterstützung
    4.7
  • Merkmale
    4.8
  • Zuverlässigkeit
    4.8
  • Preisgestaltung
    4.7
HostArmada
5,0

716 Benutzerbewertungen

2,49 $ /Monat
Startpreis

Besuchen Sie HostArmada

Bewertung basierend auf Expertenbewertung
  • Benutzerfreundlich
    4.5
  • Unterstützung
    4.5
  • Merkmale
    4.5
  • Zuverlässigkeit
    4.5
  • Preisgestaltung
    4,0
  • Klicken Sie hier, um mehr über das beste Website-Hosting zu erfahren .