itsource

내 앱을 다시 배포하지 않고 Windows Azure에 배포된 클라우드 앱의 web.config를 편집할 수 있습니까?

mycopycode 2023. 4. 27. 22:23
반응형

내 앱을 다시 배포하지 않고 Windows Azure에 배포된 클라우드 앱의 web.config를 편집할 수 있습니까?

앱을 다시 배포하지 않고 Windows Azure에 배포된 클라우드 앱의 web.config 파일을 편집할 수 있습니까?

시나리오는-->와 같습니다.

  1. 클라우드 앱은 3개의 인스턴스와 함께 Azure에 배포됩니다.
  2. web.config에는 홈 페이지에 표시되는 설정에 정적 텍스트가 있습니다(예: © 2009 My site). 모든 권한 보유)
  3. 이제 웹에서 언급된 정적 텍스트를 변경하고자 합니다.2009년부터 2010년까지 구성.
  4. 이제 웹을 편집하고 싶습니다.내 사이트를 다시 배포하지 않고 구성합니다.
  5. 업데이트된 웹으로 스테이징할 때 --> 앱을 배포하고 싶지 않습니다.구성한 다음 프로덕션과 스왑합니다.

런타임에 배포된 패키지에서 파일을 업데이트하는 방법이 있습니까?

아래 댓글에 있는 Maxim에 따르면 이 답변은 이제 구식입니다.

마이크로소프트를 사용하여 OnStart 이벤트에서 웹 역할의 web.config 설정을 프로그래밍 방식으로 수정할 수 있습니다.웹.관리.서버 관리자 라이브러리입니다.

저는 이 질문에 답한 이후로 Azure를 사용하지 않았고, 100% 유효한 답을 확신할 수 없습니다.

한마디로 아니오.

이러한 설정에는 서비스 구성 파일을 사용해야 합니다.

웹 구성 설정과 비교하여 서비스 구성 설정에 키를 배치할지 여부를 결정합니다.

다음과 같은 질문을 스스로에게 할 수 있습니다.

이 설정은 배포할 때마다 변경됩니까?그렇다면 구성 설정이 이 정보에 대한 올바른 위치입니다.

배포 후 이 설정이 변경됩니까?그렇다면 서비스 구성 설정이 이 정보에 대한 올바른 위치입니다.

Web.config 파일은 배포 패키지의 일부이므로 다시 배포해야 하는 설정을 업데이트하기 위해 Azure에 배포할 때 읽기 전용입니다.

서비스 구성 파일은 배포 패키지와 함께 업로드되지만 패키지에는 포함되지 않으므로 서비스를 다시 배포하지 않고도 파일을 업로드하거나 편집할 수 있습니다.

가능하며 web.config를 변경하면 ASP가 됩니다.NET 앱은 "일반 ASP"에서 예상하는 것처럼 새 설정으로 다시 시작됩니다.NET". web.config에 올바른 업데이트를 하고 있는지 확인하기만 하면 됩니다. 그렇지 않으면 인스턴스를 ASP로 한 번 복구하는 것이 불가능할 수 있습니다.net이 web.config 오류와 함께 사라졌습니다.

web.config를 배포 패키지의 일부로 사용하는 경우 해당 패키지에 대한 파일 사용 권한을 변경해야 합니다. 이는 RoleEntryPoint에서 수행할 수 있습니다.시작 시().

또 다른 방법은 ASP를 갖는 것입니다.NET 앱은 일부 init 웹 핸들러를 통해 초기 web.config 자체를 씁니다.

기본적으로 ASP입니다.NET 앱은 배포 패키지의 파일 또는 RoleEntryPoint 코드로 작성된 파일에 대한 업데이트 또는 삭제 권한은 없지만 자체적으로 생성한 파일에 대한 전체 액세스 권한은 가집니다.이 동작은 SDK를 사용하여 로컬로 실행할 때 다른 동작을 수행하는 동안 "real Azure"에서만 발생합니다.

RoleEntryPoint에서 파일을 작성하고 파일에 대한 권한을 설정하는 방법에 대한 자세한 내용은 이 항목을 확인하십시오.OnStart(): RoleEntryPoint에서 웹 역할 사이트 루트 경로를 가져오려면 어떻게 해야 합니까?시작 시()?

네, 할 수 있습니다.단계는 다음과 같습니다.

  1. 환경 변수 'RdRoleRoot'를 사용하여 역할의 루트를 찾습니다.
  2. 'RoleModel.xml' 파일을 찾습니다.
  3. 'RoleModel.xml' 파일을 로드하고 "Sites" 노드에서 사이트에 대한 항목을 찾습니다.
  4. 이 항목에서 web.config 파일이 들어 있는 디렉터리의 상대 경로인 'physicalDirectory' 특성을 찾습니다.
  5. 역할 루트 경로를 이 물리적 디렉토리 경로와 결합하여 전체 경로를 가져옵니다.

저는 샘플 코드로 블로그 포스트 http://anuchandy.blogspot.com/2014/02/changing-webconfig-file-deployed-on.html 을 작성했습니다.

예, 가능합니다. Azure용 RDC를 만들고 E:\siteroot\0으로 이동하여 배포된 모든 파일을 확인하고 web.config를 편집하기만 하면 됩니다.다시 배포하거나 이미지를 다시 작성하거나 재부팅할 필요가 없는 프로덕션 및 스테이징 모두에서 작동합니다.

이 게시물에 스레드가 오래도록 요청받길 바라지만, 나 같은 사람에게는 확실히 도움이 됩니다 :-)

2018년 7월 13일

Azure Portal에는 배포된 App Service 아래에 App Service Editor(미리 보기)가 있습니다.이 옵션을 선택하면 배포된 Azure 웹 사이트를 가리키는 Visual Studio Code와 유사한 편집기가 다음을 편집합니다.web.config(또는 다른 파일) 쉬운 방법:

Azure App Service Editor 스크린샷

언급URL : https://stackoverflow.com/questions/2362191/is-it-possible-to-edit-web-config-of-cloud-app-deployed-on-windows-azure-without

반응형