Wir haben eine ASP.NET Core-Site auf unserem Testserver, die wir automatisch von XCopy auf unserem IIS-Webserver bereitstellen möchten, so wie wir es bei unseren aktuellen Apps tun, wo die Site bereits läuft. Ich habe ein Veröffentlichungsprofil hinzugefügt, das die Site in ein "publish-local" -Verzeichnis innerhalb der Lösung packt. Immer wenn ich versuche, die vorhandene Site zu kopieren, werden alle DLLs von einem anderen Prozess verwendet, vermutlich von Kestrel, weshalb ich gezwungen bin, in einem gleichgeordneten Verzeichnis zu deployen und IIS neu zuzuordnen, um das Geschwister zu betrachten. Wie aktualisiert man eine laufende ASP.NET Core-Site, ohne manuell eingreifen zu müssen und entweder den Kestrel- oder den IIS-Webserver anzuhalten?
Wenn Sie mit IIS arbeiten, können Sie eine Datei namens app_offline.htm
(Groß- / Kleinschreibung beachten) in Ihren Anwendungsordner legen. IIS wird Ihre Anwendung beenden und den Inhalt der app_offline.html
-Datei bereitstellen. Jetzt können Sie Ihre Anwendung kopieren. Sobald Sie fertig sind, entfernen Sie die app_offline.html und IIS startet Ihre App. Dies wird in den Dokumenten und in mein Beitrag zum Ausführen von Asp. NET Core-Anwendungen mit IIS.
Tags und Links iis asp.net-core publish-profiles