Remoteveröffentlichung von ASP.NET Core-Programmen auf IIS-Webservern im Internet

Erstellungsdatum der Seite :

Umwelt

Windows Server
  • Windows Server 2019
Internetinformationsdienste (IIS)
  • 10.0
ASP.NET Kern
  • 5.0
Web Bereitstellen
  • 3.6 Japanische Version

Zuerst

Erfahren Sie, wie Sie ASP.NET Core-Programme direkt aus Visual Studio in Internetinformationsdienste (IIS) hochladen, die Sie unter Windows Server einrichten.

Wenn Sie zum ersten Mal unter Windows Server arbeiten müssen, können Sie es nach dem Einrichten zum zweiten Mal und darüber hinaus direkt aus Visual Studio veröffentlichen.

Diese Tipps veröffentlichen Programme auf Servern im Internet, aber die Sicherheitsmaßnahmen sind minimal, wenn Sie sich also Sorgen machen, empfehlen wir Ihnen, zusätzliche Maßnahmen zu ergreifen oder eine andere Upload-Methode zu verwenden.

Vorbedingung

  • Windows Server einrichten
  • Sie haben bereits ein ASP.NET Core-Programm zum Hochladen
  • Herstellen einer Verbindung mit Servern über das Internet oder Intranet

Verfahren

Einrichten von Internetinformationsdienste (IIS)

Die Schritte sind auf der folgenden Seite zusammengefasst. IIS kann auch für andere als die Ausführung von ASP.NET Core-Programmen verwendet werden.

Übrigens sind im iis-Setup zusätzliche Einstellungen erforderlich, die jedoch nicht in den oben verlinkten Tipps festgelegt sind. Sie können es später einrichten, also werden wir später darüber sprechen.

Hinzufügen von Verwaltungsdiensten in IIS

Fügen Sie es hinzu, da das IIS-Standardsetup keinen "verwalteten Dienst" einrichtet.

Starten Sie den Server-Manager.

Wählen Sie im Menü Verwalten die Option Rollen und Features hinzufügen aus.

Drücken Sie mehrmals die Taste "Weiter" zum gewünschten Bildschirm.

Wenn Sie zum Bildschirm "Serverrolle auswählen" gelangen, erweitern Sie "Webserver (IIS)" und "Verwaltungstools" und aktivieren Sie "Verwaltungsdienste". (Die Abbildung ist auf Englisch, aber es ist die gleiche.)

Wenn ASP.NET 4.7 nicht installiert ist, erscheint der folgende Dialog, also addieren Sie ihn zusammen.

Danach klicken Sie bitte auf die Schaltfläche "Weiter" und installieren Sie sie.

Wenn Sie den IIS-Manager öffnen, können Sie überprüfen, ob Verwaltungsdienste hinzugefügt wurden.

Die Firewall lässt auch automatisch Ports für die Bereitstellung zu.

Installieren ASP.NET Core Hosting Bundle

Erforderlich, um ASP.NET Core unter Windows Server auszuführen. Nach der Installation kann es in IIS wie eine herkömmliche ASP.NET-Anwendung funktionieren.

Gehen Sie zu den folgenden Seiten: Übrigens verwendet dieser Tipp 5.0, wenn Sie also eine andere Version verwenden, gehen Sie auf die entsprechende Seite.

Es gibt ein Hosting-Bundle für Windows zur Laufzeit unten rechts auf dem Bildschirm, also klicken Sie auf den Link, um es herunterzuladen.

Führen Sie das heruntergeladene Installationsprogramm unter Windows Server aus.

Aktivieren Sie "Ich akzeptiere die Lizenz- und Nutzungsbedingungen" und klicken Sie auf die Schaltfläche Installieren.

Schließen Sie, wenn die Installation abgeschlossen ist.

Installieren von Web Deploy

Erforderlich, um ein Veröffentlichungsprogramm von Visual Studio zu empfangen.

Gehen Sie zum untenstehenden Link.

Herunterladen.

Windows Server hat nur eine grundlegende 64-Bit-Version, also laden Sie die 64-Bit-Version herunter.

Ausführen unter Windows Server.

Klicken Sie auf Weiter.

Aktivieren Sie "Ich akzeptiere die Lizenzvereinbarung" und klicken Sie auf "Weiter".

Klicken Sie auf Vollständig.

Klicken Sie auf die Schaltfläche "Installieren".

Wenn die Installation abgeschlossen ist, klicken Sie auf die Schaltfläche "Fertig".

Wenn Sie den IIS-Manager öffnen, haben Sie Stellvertretungsverwaltungsdienste hinzugefügt.

Anwendungspool-Einstellungen

Für ASP.NET Core ist die .NET CLR irrelevant, daher fügen Sie einen Anwendungspool ohne verwalteten Code hinzu. Sie können den vorhandenen DefaultAppPool sicher ändern. Diese Einstellung steht nicht in direktem Zusammenhang mit der Webbereitstellung, daher werde ich mich nicht um die Details kümmern.

Wenn Sie einen Anwendungspool hinzugefügt haben, legen Sie ihn auf die Website fest.

Erstellen einer Website

Erstellen Sie eine Website. Sie können eine neue Website erstellen oder die Standardwebsite von Grund auf neu verwenden. In diesen Tipps wird die Standardwebsite beibehalten. Die Erstellung von Websites hat nichts direkt mit der Webbereitstellung zu tun, daher möchte ich nicht ins Detail gehen.

Erstellen eines Bereitstellungsbenutzers

Es kann auch in einem Windows-Konto bereitgestellt werden, erhöht jedoch die Sicherheitsrisiken und erstellt einen dedizierten Bereitstellungsbenutzer. Sie müssen dieses Element nicht konfigurieren, wenn Sie in einem Windows-Konto bereitstellen.

Starten Sie den IIS-Manager.

Wählen Sie in der linken Struktur einen Server aus, und öffnen Sie IIS-Manager-Benutzer in der Gruppe Zentrale Administration.

Klicken Sie rechts auf Benutzer hinzufügen.

Erstellen Sie durch Eingabe des Namens und Kennworts des Bereitstellungsbenutzers.

Zugefügt.

Bereitstellung zulassen

Sie haben IIS nur Benutzer hinzugefügt, daher müssen Sie Berechtigungen für jede Website festlegen. Diese Einstellung ist nicht erforderlich, wenn Sie mit einem Windows-Administratorkonto veröffentlichen.

Wählen Sie die Site in der Struktur auf der linken Seite aus, um IIS-Manager-Berechtigungen zu öffnen.

Klicken Sie im rechten Element auf Benutzer zulassen.

Da wir den Benutzer angeben, den wir dieses Mal zu IIS hinzugefügt haben, aktivieren Sie iis-Manager und klicken Sie auf die Schaltfläche Auswählen. Wenn Sie mit einem Windows-Konto veröffentlichen möchten, aktivieren Sie Windows.

Eine Liste der Benutzer wird angezeigt, und Sie wählen sie aus.

Klicken Sie nach der Auswahl auf die Schaltfläche OK.

Der Status, der hinzugefügt wurde.

Bereitstellungseinstellungen

Wählen Sie in der Struktur auf der linken Seite einen Server aus, um verwaltungsdienste zu öffnen.

Wenn "Remoteverbindung aktivieren" und "Windows-Anmeldeinformationen oder IIS-Manager-Anmeldeinformationen" aktiviert sind, müssen Sie nichts tun. Wenn Sie mit einem Windows-Konto veröffentlichen, ist es in Ordnung, wenn "Nur Windows-Anmeldeinformationen" aktiviert ist.

Wenn es nicht aktiviert ist, überprüfen Sie es.

Ich denke, dass sich jedes Element in einem Zustand befindet, in dem Sie nicht eingeben können, also klicken Sie rechts auf "Stop".

Überprüfen Sie die Artikel, die Sie benötigen. Wenn Sie fertig sind, klicken Sie auf den Link "Start" auf der rechten Seite.

Es gibt eine Einstellung, um die Sicherheit am unteren Rand dieses Bildschirms zu erhöhen, aber vor allem ist es notwendig zu bestätigen, dass es arrangiert werden kann, also werde ich diese Zeit nicht sparen.

Bereitstellen von Programmen aus Visual Studio

Kehren Sie zu Ihrem Arbeits-PC zurück, und starten Sie Visual Studio, um das ASP.NET Core-Programm zu öffnen. Dieses Mal werden wir ein Programm veröffentlichen, in dem ein neues Projekt erstellt wurde.

Klicken Sie mit der rechten Maustaste auf das Projekt und wählen Sie Veröffentlichen.

Wählen Sie Webserver (IIS) aus, und klicken Sie auf Weiter.

Wählen Sie Webbereitstellung aus.

Geben Sie Folgendes ein:

Wert des Parameternamens
Server Die IP-Adresse oder DNS oder der Domänenname des Servers, der IIS konfiguriert hat. Sie können entweder das Internet oder das Intranet angeben.
Name der Website Gibt den Websitenamen an, der IIS hinzugefügt wird.
Zur URL Es gibt kein Problem mit Leerzeichen.
Benutzername Gibt das Benutzerkonto unter Windows Server oder den Benutzernamen an, den Sie in IIS erstellt haben.
Passwort Geben Sie das Authentifizierungskennwort für den benutzer oben ein.
Passwort speichern Wenn es schwierig ist, bei jeder Veröffentlichung ein Kennwort einzugeben, speichern Sie es.

Es wird wie gezeigt erstellt.

Wenn Sie mehrere Veröffentlichungsprofile erstellt haben, können Sie diese in der Dropdown-Liste oben ändern, aber wenn der Name verwirrend ist, können Sie dies tun.

Detaillierte Einstellungen können auf dem Bearbeitungsbildschirm geändert werden.

"Einstellungen" wird auf der linken Registerkarte ausgewählt. Sie müssen keine speziellen Änderungen vornehmen, sondern die Konfigurations-, Ziellaufzeit- und Dateiveröffentlichungsoptionen nach Bedarf ändern.

"Verbinden" wird auf der linken Registerkarte ausgewählt. Sie werden sehen, was Sie zuerst eingegeben haben, aber klicken Sie unten auf die Schaltfläche "Verbindung überprüfen".

Das folgende Dialogfeld wird angezeigt, wenn Sie erfolgreich eine Verbindung mit dem Herausgeber herstellen können. Aktivieren Sie Dieses Zertifikat für zukünftige Sitzungen in Visual Studio speichern, und klicken Sie auf die Schaltfläche "Ich stimme zu". Wenn Sie speichern, wird dieser Dialog nur zum ersten Mal angezeigt.

Wenn auf der rechten Seite der Überprüfung der Verbindung ein Häkchen angezeigt wird, ist es möglich, eine verbindung normal herzustellen.

Übrigens, wenn es fehlschlägt, klicken Sie auf den Link, um die Ursache zu überprüfen und je nach Ursache Maßnahmen zu ergreifen.

Häufige Ursachen sind:

  • Der Benutzername und das Kennwort sind falsch.
  • IIS lässt keine Benutzer zu. Sobald die Untersuchungsmethode von einem Windows-Administrator bereitgestellt wurde.
  • Die TCP 8172-Firewall ist nicht zulässig. Clouds wie Azure erlauben dies nicht auf der Cloudseite.
  • Sie haben das Web Deployment-Tool nicht "vollständig" installiert.
  • Iis fehlt. Bitte überprüfen Sie diese Tipps.

Wenn Sie fertig sind, klicken Sie im Projektmappen-Explorer auf Projektmappe → Project → Eigenschaften → PublishProfiles erweitern und legen Sie den Problemnamen fest". pubxml", so öffnet es sich.

Project Fügen Sie den folgenden Code im >-Tag hinzu, und speichern Sie PropertyGroup ihn:

<AllowUntrustedCertificate>True</AllowUntrustedCertificate>

Wenn Sie mit der Einrichtung fertig sind, veröffentlichen Sie mit der Schaltfläche Veröffentlichen.

Wenn Sie erfolgreich veröffentlichen, sind Sie fertig. Es kann gelegentlich fehlschlagen, also geben Sie es in diesem Fall erneut aus oder überprüfen Sie die Verbindung.

Wenn Sie in einem Webbrowser darauf zugreifen können und das ASP.NET Core-Programm funktioniert, sind Sie fertig.

Update-Verlauf

  • 12. November 2021 : Beschreibung hinzugefügt, da .pubxml seit einiger Zeit AllowUntrustedCertificate benötigt wurde