• Home
  • Help
  • Register
  • Login
  • Home
  • Help

 
  • 0 Bewertung(en) - 0 im Durchschnitt

Wie stellst du eine .NET Core-Anwendung auf IIS bereit?

#1
05-06-2024, 19:21
Wenn es darum geht, eine .NET Core-Anwendung auf IIS bereitzustellen, denkst du vielleicht, dass es eine gewaltige Aufgabe ist, aber vertrau mir, es ist nicht so kompliziert, wie es klingt. Ich erinnere mich, als ich diesen Prozess zum ersten Mal durchlief; es fühlte sich überwältigend mit all den Schritten an. Aber jetzt, nachdem ich es ein paar Mal gemacht habe, kann ich einige Erkenntnisse teilen, die es dir leichter machen werden.

Zuerst stelle sicher, dass du die richtige Einrichtung auf deinem Server hast. Du musst IIS installiert haben und sicherstellen, dass die Hosting-Funktion für Anwendungen aktiviert ist. Wenn du bereits einen Windows Server eingerichtet hast, sollte das ziemlich einfach sein. Denk nur daran, dass .NET Core-Apps sich ein wenig von traditionellen ASP.NET-Apps in Bezug auf die Bereitstellung unterscheiden.

Sobald dein IIS bereit ist, ist das Nächste, was du tun möchtest, deine Anwendung zu veröffentlichen. Du kannst dies direkt aus Visual Studio tun, was fantastisch ist, wenn du in dieser Umgebung arbeitest. Du klickst einfach mit der rechten Maustaste auf dein Projekt im Projektmappen-Explorer und wählst die Option "Veröffentlichen". Visual Studio führt dich durch einige Einstellungen. Du kannst aus verschiedenen Zielen wählen, aber für unsere Zwecke wähl die Option "Ordner". Dadurch wird ein Ordner mit allen erforderlichen Dateien zum Ausführen deiner App erstellt.

Nachdem du dein Veröffentlichungsprofil eingerichtet hast, klicke auf die Schaltfläche Veröffentlichen und warte, bis es fertig ist. Jetzt solltest du einen Ordner mit DLL-Dateien und ein paar anderen Teilen haben - das ist alles, was du benötigst, um deine Anwendung auszuführen.

Als Nächstes solltest du diese veröffentlichte Ausgabe auf deinen Server kopieren. Wenn du direkten Zugriff auf den Server hast, kannst du dies über den Datei-Explorer tun. Alternativ könntest du ein Tool wie WinSCP oder sogar FTP verwenden, wenn der Server dafür konfiguriert ist. Stelle nur sicher, dass du dies in ein Verzeichnis legst, das leicht zu finden ist. Eine gängige Praxis ist es, einen Ordner innerhalb von C:\inetpub\wwwroot zu erstellen, aber du kannst ihm einen beliebigen Namen geben.

Jetzt ist es an der Zeit, deine Anwendung in IIS einzurichten. Öffne den IIS-Manager, was du schnell tun kannst, indem du "IIS" in die Windows-Suche eingibst. Im linken Bereich siehst du deinen Server. Klicke mit der rechten Maustaste auf den Knoten "Sites" und wähle "Website hinzufügen". Du musst hier einige Details ausfüllen, wie z. B. den Site-Namen, der beliebig sein kann, und den physischen Pfad, der auf den Ordner zeigen sollte, in dem du deine Anwendung veröffentlicht hast.

Das nächste wichtige Merkmal, an das du denken solltest, ist die Konfiguration der Bindung für deine neue Site. Wenn du auf deine App über einen Domänennamen oder einen bestimmten Port zugreifen möchtest, musst du dies hier konfigurieren. Wenn du keine Domain hast und nur auf deinem lokalen Rechner testest, kannst du die Standardeinstellungen so belassen, wie sie sind.

Sobald du deine Site erstellt hast, musst du sicherstellen, dass der Anwendungspool korrekt konfiguriert ist. Der Anwendungspool ist wie ein Container für deine Anwendung und steuert verschiedene Einstellungen wie die .NET-Version und die Identität, unter der deine App läuft. Für .NET Core-Apps stell die .NET CLR-Version auf "Kein verwalteter Code". Das ist entscheidend, weil .NET Core in einer anderen Umgebung als das klassische .NET-Framework läuft.

Die richtige Identität zu finden, ist ebenfalls wichtig. Du kannst die Standardidentität des Anwendungspools wählen oder hier ein benutzerdefiniertes Benutzerkonto konfigurieren. Wenn deine Anwendung auf Ressourcen wie eine Datenbank oder Dateien zugreift, stelle sicher, dass diese Identität die erforderlichen Berechtigungen hat, um darauf zuzugreifen.

Ein weiterer entscheidender Punkt ist sicherzustellen, dass das ASP.NET Core Hosting Bundle auf deinem Server installiert ist. Dieses Bundle enthält alles, was du benötigst, um ASP.NET Core-Apps auf IIS auszuführen, einschließlich des Moduls, das es IIS ermöglicht, mit deiner App zu kommunizieren. Du kannst dies von der offiziellen Microsoft-Website herunterladen. Nach der Installation stelle sicher, dass du IIS neu startest, damit die Änderungen wirksam werden.

Wenn alles bis zu diesem Punkt gut gelaufen ist, solltest du nun in der Lage sein, deine Site zu starten. Gehe zurück zum IIS-Manager, finde deine neu erstellte Site in der Liste und drücke die Startschaltfläche. Wenn alles richtig konfiguriert ist, solltest du jetzt in der Lage sein, einen Webbrowser zu öffnen und auf deine App unter der angegebenen URL zuzugreifen.

Es ist jedoch üblich, während dieses Prozesses auf einige Probleme zu stoßen, und vertrau mir, beim ersten Mal kann das frustrierend sein. Ein Problem, auf das ich früh gestoßen bin, war eine einfache Fehlkonfiguration in der web.config-Datei. .NET Core verwendet diese Datei für Einstellungen, die nicht nur die Hosting-Umgebung steuern, sondern auch die Fehlerrückmeldungen verwalten. Wenn hier etwas nicht korrekt konfiguriert ist, könntest du HTTP-Fehler sehen.

Wenn du auf Probleme stößt, überprüfe zuerst die Anwendungsprotokolle. Sie sind in der Regel sehr informativ. Schau im Protokollverzeichnis nach oder wo auch immer du das Protokollieren in deiner Anwendung konfiguriert hast. Stelle auch sicher, dass die IIS-Funktion für fehlgeschlagene Anforderungsverfolgung aktiviert ist. Dies kann detaillierte Fehlerprotokolle bereitstellen, die bei der Fehlersuche helfen.

Ein weiterer Punkt, den du bedenken solltest, sind deine Firewall-Einstellungen. Manchmal kann es sein, dass deine Anwendung extern nicht zugänglich ist, weil der Port in der Windows-Firewall blockiert ist. Gehe in deine Firewall-Einstellungen und stelle sicher, dass die erforderlichen Ports geöffnet sind.

Dann gibt es das ganze Thema Sicherheit. Wenn du diese Anwendung in einer Produktionsumgebung bereitstellst, solltest du deine Site unbedingt mit SSL sichern. Das bedeutet, dass du ein SSL-Zertifikat benötigst. Du kannst eines von verschiedenen Anbietern kaufen oder für ein einfacheres Setup etwas wie Let's Encrypt für kostenlose Zertifikate verwenden. SSL in IIS zu konfigurieren ist einfach, und es ist nur eine Frage des Bindens des Zertifikats an deine Site.

Ein weiterer Tipp: Wenn deine App von externen Diensten, APIs oder Datenbanken abhängt, stelle sicher, dass diese Verbindungen korrekt konfiguriert sind und dass dein Server darauf zugreifen kann. Netzwerkeinstellungen und Rollen können oft Auswirkungen haben, also denk daran.

Sobald deine Anwendung live ist und gut auf IIS funktioniert, empfehle ich, regelmäßige Gesundheitsprüfungen durchzuführen, deine Anwendung zu aktualisieren, indem du ihre Leistung überwachst, und auf Protokolle zu achten. Das hilft, potenzielle Probleme zu erkennen, bevor sie eskalieren. Ich habe im Laufe der Jahre gelernt, dass es wichtig ist, proaktiv zu sein, um einen reibungslosen Betrieb zu gewährleisten.

Das ist also im Grunde genommen, wie du eine .NET Core-Anwendung auf IIS bereitstellst. Es gibt immer leichte Variationen, abhängig von deiner Anwendung und Umgebung, aber wenn du dich an diese Schritte hältst, solltest du den Prozess bewältigen können. Scheue dich nicht, zu erkunden und verschiedene Dinge auszuprobieren; jede Bereitstellung lehrt etwas Neues. Experimentiere weiter, und du wirst jedes Mal, wenn du eine neue Bereitstellung einrichtest, sicherer werden!

Ich hoffe, du fandest meinen Beitrag nützlich. Übrigens, hast du eine gute Backup-Lösung für Windows Server implementiert? In diesem Beitrag erkläre ich, wie du Windows Server richtig sicherst.
Markus
Offline
Registriert seit: Jun 2018
« Ein Thema zurück | Ein Thema vor »

Benutzer, die gerade dieses Thema anschauen:



  • Thema abonnieren
Gehe zu:

Backup Sichern Windows Server IIS v
« Zurück 1 2 3 4 5 6 7 8 9 10 11 Weiter »
Wie stellst du eine .NET Core-Anwendung auf IIS bereit?

© by FastNeuron

Linearer Modus
Baumstrukturmodus