20

テスト サーバーで実行されている ASP.NET Core サイトがあり、既にサイトを実行している現在のアプリと同様に、XCopy によって IIS Web サーバーに自動展開したいと考えています。ソリューション内の "publish-local" ディレクトリにサイトをパッケージ化する発行プロファイルを追加しました。既存のサイトをコピーしようとすると、すべての DLL が別のプロセス (おそらく Kestrel) によって使用されているため、兄弟ディレクトリに展開し、IIS を再マップして兄弟を確認する必要があります。Kestrel または IIS Web サーバーを手動で介入して停止することなく、実行中の ASP.NET Core サイトを更新するにはどうすればよいでしょうか?

4

3 に答える 3

19

IIS で実行している場合、 app_offline.htm(大文字と小文字を区別する) という名前のファイルをアプリケーション フォルダーにドロップできます。IIS はアプリケーションを停止し、app_offline.htmlファイルの内容を提供します。これで、アプリケーションをコピーできます。終了したら app_offline.html を削除すると、IIS がアプリを起動します。これについては、ドキュメントと、IIS での Asp.NET Core アプリの実行に関する私の投稿でも説明されています。

于 2016-12-14T22:00:38.367 に答える
1

私たちが使用するちょっとしたチートは、最初に古いファイルの名前を変更し ( my.dll.old. 次に、アプリ プールの再起動を強制するか、待機することができます。

于 2016-12-14T18:49:35.130 に答える