У нас есть сайт ASP.NET Core, работающий на нашем тестовом сервере, который мы хотели бы автоматически развернуть XCopy на наш веб-сервер IIS, так как мы делаем наши текущие приложения, где у меня уже есть сайт. Я добавил опубликованный профиль, который упаковывает сайт в локатор «publish-local» в рамках решения. Всякий раз, когда я пытаюсь скопировать поверх существующего сайта, все библиотеки DLL используются другим процессом, предположительно Kestrel, поэтому я вынужден разворачиваться в директорию для сиблинга и перегруппировать IIS, чтобы посмотреть на брата. Как обновить запущенный сайт ASP.NET Core без необходимости вручную вмешиваться и останавливать веб-серверы Kestrel или IIS?Как я могу обновить приложение ASP.NET Core поверх существующего/запущенного сайта без остановки веб-сервера?
ответ
немного чит мы используем, чтобы сначала переименовать старые файлы (что-то вроде my.dll.old
), а затем скопировать новые DLL. Затем вы можете либо принудительно, либо дождаться перезапуска пула приложений.
При работе с IIS вы можете удалить файл с именем app_offline.htm
(с учетом регистра) в папку вашего приложения. IIS остановит ваше приложение и будет обслуживать содержимое файла app_offline.html
. Теперь вы можете скопировать свое приложение. После завершения удаления app_offline.html и IIS запустит ваше приложение. Это описано в docs, а также в my post при запуске приложений Asp.NET Core с IIS.
Даже с app_offline.htm, вашwebsite.exe все еще используется, и вы не можете скопировать новую версию. С app_offline.htm и пулом пула приложений _then_ похоже, что вы можете скопировать файл yourwebsite.exe, но просто поставить app_offline.htm недостаточно. –
Мое понимание заключается в том, что достаточно положить app_offline.html. IIS пытается прекратить ваше приложение изящно, поэтому, если есть ожидающие запросы, остановка процесса приложения может быть не непосредственной. Если вы не видите, что приложение остановлено после простого добавления app_offline.html, я предлагаю открыть проблему в этом репо: https://github.com/aspnet/AspNetCoreModule – Pawel
Я бы подумал, что это так, но это проблема, прямо сейчас. В моей сборке TFS у меня есть сценарий powershell, который помещается в app_offline.htm, он ждет несколько секунд, он отправляет запрос в IIS и возвращает 503 ошибку, показывающую, что приложение отключено ... но mywebsite.exe _still_ заблокирован для редактирование и публикация в dotnet не удается. :(Я предполагаю, что я отправлю вопрос на репо, которое вы предложили, потому что я согласен - app_offline.htm должно быть достаточно хорошим. –
- 1. Как обновить dll сайта ASP.Net без остановки сайта
- 2. Как я могу обновить winrt core libs?
- 3. Как создается приложение ASP.NET Core?
- 4. В развернутом проекте веб-сайта ASP.NET я могу обновить файл .resx без перекомпиляции?
- 5. Python: Как я могу обновить QLCDNumbers + emiting снова после остановки
- 6. Как я могу обновить свое приложение
- 7. Как запустить приложение Android без остановки
- 8. Как обновить приложение asp.net azure
- 9. Обновить значения претензий в ASP.NET One Core
- 10. Как я могу использовать приложение asp.net?
- 11. Как я могу получить IHostingEnvironment из DbContext в ASP.NET Core
- 12. Как я могу запустить трансляцию трансляции без остановки?
- 13. Как я могу «провалить» сборку без остановки в муравье?
- 14. Как я могу получить трассировку стека JS без остановки скрипта?
- 15. Как обновить запущенное приложение asp.net?
- 16. HTML поверх вспышки без остановки взаимодействия со вспышкой
- 17. Можем ли мы разместить приложение Asp.Net Core как проект веб-сайта в IIS?
- 18. Как я могу защитить приложение ASP.NET AJAX?
- 19. Использование ASP.NET Core без MVC
- 20. ASP.NET MVC: Как обновить ASP.NET MVC сайта на производстве
- 21. Логотип сайта в заголовке ASP.NET Core MVC
- 22. Обновление dll без остановки службы
- 23. Могу ли я разместить приложение ASP.Net 5 без HttpPlatformHandler?
- 24. Как я могу получить Url Referrer в ASP.NET Core MVC?
- 25. Как я могу получить valueprovider в asp.net core 1.0?
- 26. Как я могу обмениваться сеансом между поддоменами в ASP.NET Core?
- 27. Как я могу реализовать Массовую вставку в ASP.NET Core 1.0?
- 28. Как я могу переместить библиотеки bower в ASP.NET Core?
- 29. Аутентификация пользователей теряется, когда я публикую приложение ASP.NET Core.
- 30. iPhone приложение без веб-сайта
Я пытаюсь скопировать копирование на веб-сервер, используя MSBUILD и TeamCity. Не блокирует ли Kestrel переименование? – flipdoubt
Если файлы используются, они, безусловно, не разрешают переименование. – QuietSeditionist
Вы можете переименовать файл, который используется на самом деле. – Pawel