App_Offline.htm이 있는 경우에도 IIS 잠금 파일

App_Offline.htm이 있는 경우에도 IIS 잠금 파일

내 호스팅 회사가 방금 내 서버를 업그레이드하고 내 사이트를 이전했습니다. 저는 Visual Studio에서 개발하고 사이트를 로컬 폴더에 게시한 다음 FTP를 통해 업로드합니다(차이가 있는 경우 FileZilla 사용).

이전 서버에서는 각 사이트의 폴더 _App_Offline.htm에 파일 이름을 보관했습니다 wwwroot. 새 버전을 업로드할 때 이름을 로 변경하여 App_Offline.htmIIS에서 파일을 릴리스할 수 있도록 하고 업로드한 다음 파일 이름을 다시 변경했습니다. 모두 잘 작동했습니다.

새 서버에서 파일 이름을 바꾸면 IIS가 파일을 릴리스할 수 없으므로 변경 사항을 업로드할 수 없습니다. 제어판에서 웹사이트를 중지하려고 시도했지만 도움이 되지 않았습니다. 앱 풀을 중지해 보았습니다. 일반적으로 도움이 되지만 다시 시작하면 거의 항상 실패합니다. 다시 시작하려면 최소 15~20번의 시도가 필요합니다.

여기서 문제가 무엇인지에 대한 제안이 있으신가요? 더 이상 할 말이 별로 없다는 걸 알지만, 더 이상 무슨 말을 할 수 있을지 잘 모르겠습니다. 다음은 관련성이 있는 몇 가지 세부정보입니다.

  • 윈도우 서버 2022
  • IIS 10
  • 서버가 Windows FTP를 실행 중입니다.
  • 모든 사이트는 .NET(6 또는 7)이며 대부분 Blazor이지만 일부 Razor 페이지도 있습니다.

제가 제공할 수 있는 추가 정보가 있으면 알려주시기 바랍니다.

감사해요

답변1

이상하게도 IIS가 파일을 보유하고 있는 경우 해당 파일을 삭제하거나 덮어쓸 수는 없지만 이름을 바꿀 수 있으며 사이트는 이전과 같이 계속됩니다.

따라서 이 문제를 해결하는 한 가지 방법은 중요한 파일(내 경험상 일반적으로 기본 DLL만임)의 이름을 바꾼 다음 새 버전을 복사한 다음 app_offline.htm 트릭을 사용하여 웹 사이트를 다시 시작하는 것입니다. 다시 시작하면 이름이 바뀐 (이전) 파일을 삭제할 수 있습니다.

실제로 이전 파일을 항상 즉시 삭제할 수는 없지만 이름을 변경하여 접두사를 가지면 zzz파일 목록 맨 아래에 숨겨져 다음에 삭제할 수 있습니다. 업로드 시간.

전반적으로 시간은 동일하지만 app_offline.htm의 이름을 바꾸고 업로드한 다음 다시 이름을 바꾸는 대신 DLL의 이름을 바꾸고 app_offline.htm을 빠르게 연속해서 두 번 업로드하고 이름을 바꿉니다. 이것의 장점은 다운타임이 훨씬 적다는 것입니다. 기본적으로 사이트는 app_offline.htm의 이름을 바꾸고 다시 이름을 바꾸는 동안만 다운됩니다.

도움이 되길 바랍니다.

관련 정보