msdeploy를 통한 Azure Web App 전개 오류 - ERROR_INSUFFICE_A CCESS_TO_SITE_FOLDER
저는 현재 msdeploy를 사용하여 Azure Web App에 약 4개월 동안 전개하고 있으며, 웹사이트 업로드가 순조롭게 진행되고 있습니다.최근까지 전개에 관한 에러는 없었습니다.웹사이트 어플리케이션 게시 시 "ERROR_INSUFFICE_ACCESS_TO_SITE_FOLDER" 오류가 나타납니다.
웹 사이트를 성공적으로 업데이트하려면 Azure에서 웹 앱을 중지한 다음 Visual Studio를 통해 웹 응용 프로그램의 게시를 실행하는 방법밖에 없습니다.다만, 유저가 현재 시스템을 사용하고 있는 경우, 이것은 문제가 될 수 있습니다.웹 사이트를 업데이트하는 동안 다운타임이 발생하지 않았으면 합니다.
전체 오류는 다음과 같습니다.
msdeploy 오류 ERROR_INSUFFICE_ACCESS_TO_SITE_FOLDER: 웹 배포 작업이 실패했습니다.(지정된 디렉토리('D:\home\site\wwroot\bin\Domain')에 대해 작업("Create File")을 수행할 수 없습니다.DbFactory.dll").이 문제는 서버 관리자가 사용 중인 사용자 인증 정보에 대해 이 작업을 승인하지 않은 경우에 발생할 수 있습니다.자세한 내용은 http://go.microsoft.com/fwlink/?LinkId=221672#ERROR_INSUFFICE_ACCESS_TO_SITE_FOLDER)를 참조하십시오.
이러한 권한을 어떻게 승인해야 합니까?
또, Azure의 퍼블리싱 프로파일을 리셋 해, 새로운 프로파일을 다운로드해 재시도 하고 있습니다.하지만 운이 좋지 않아요.
그 오류는 약간 잘못되었다.이 문제는 권한과는 무관하지만 파일이 사용 중이기 때문에 발생합니다.
항상 그런 일이 일어나나요?Gehs.DbFactory.dll
아니면 다른 파일도 있나요?또,Gehs.DbFactory.dll
일반 관리 어셈블리 또는 네이티브/믹스 어셈블리 중 어느 쪽입니까?
일반적으로 모든 어셈블리는 섀도우 복사되므로bin
폴더입니다.네이티브의 경우 적재할 수 있습니다.
이 경우 Azure 고유의 문제가 아닙니다.또, 어디에서라도 전개하는 경우는, 같은 문제가 발생할 가능성이 있습니다.예를 들면, 이 파일을 에서 삭제해 주세요.bin
로컬에서 실행 중인 폴더입니다.
새 버전을 게시하려면 파일이 잠기지 않도록 해야 합니다.
이 방법을 찾을 수 없는 경우 다운타임 없이 게시할 수 있는 기술을 다음에 제시합니다.
- Kudu Console을 사용하여
d:\home\site\wwwroot\bin
표시 - 가 되는 DLL의 이름을 "로 변경(예: "DLL"로 변경)
Gehs.DbFactory.dll.old
수 (삭제할 수 없습니다.) - 퍼블리싱을 하다
수정은 Remove additional files at destination 설정을 true로 설정하는 것이었습니다.
하고 있어요.NET 6 및 최근에 에서 이행된 것입니다.NET Core 3.1 ~넷 6
프로젝트의 내용 아래에 새 폴더를 추가하고 게시하려고 했을 때도 같은 일이 있었습니다.Azure에서 앱을 재기동하면 정상적으로 동작합니다.
가 (Unable to perform the operation ("Delete Directory") for the specified directory ("2_0_50727")
정상적으로 작동하던 배치에서 갑자기 고장이 났습니다.
주의를 기울이지 않으면 '2_0_50727'은 그냥 난수처럼 보입니다.
보니 요.aspnet_client\system_web\2_0_50727
파일도 들어있지 않았어요
이 타임스탬프를 내 웹 이는 에 의해 .Add / Remove Features
" " " " " " 에서 은 이 입니다.따라서 이 폴더는 어떤 권한이 실행되든 간에 생성되었습니다.
삭제하자마자 다시 전개할 수 있었습니다.
저도 Octopus에서 Azure Web App으로 인스턴스를 중지하고 전개할 때 이 문제가 발생했습니다.그러나 w3wp scm 프로세스는 여전히 파일을 사용하고 있었습니다.그래서 프로세스 탐색기로 가서 죽여야만 했어요.
파일을 삭제하기 전에 파일 핸들에서 검색하여 파일을 사용하는 프로세스를 검색합니다.
FTP를 통해 App Service 파일을 조작할 때 발생합니다.중요한 걸 지웠나 봐요App Service를 새로 고치고 다시 시작하면 도움이 되었습니다.
가 안 요.D:\home\site\wwwroot\newrelic\Extensions\JetBrains.Annotations.dll
.
웹 앱을 정지해도 Kudu의 Powershell에서 삭제할 수 없었습니다.
을 ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★-enableRule:DoNotDeleteRule
다음과 같습니다.
이 문제는 IIS World Wide Web Publishing Service 서비스가 서버에서 실행을 중단했을 때 발생했습니다.수동으로 다시 켜야 했습니다.
언급URL : https://stackoverflow.com/questions/34613147/azure-web-app-deployment-error-via-msdeploy-error-insufficient-a-ccess-to-site
'code' 카테고리의 다른 글
ENV 변수 또는 기본값을 사용하여 Makefile 변수 정의 (0) | 2023.04.23 |
---|---|
세로 구분 기호를 추가하는 방법 (0) | 2023.04.23 |
UIMage : 애스펙트 핏과 센터 표시 (0) | 2023.04.23 |
조건부 고유 제약 (0) | 2023.04.23 |
iOS에서 Objective-C의 유형 (0) | 2023.04.23 |