IIS 7.5에서는 다음과 같이 구성된 간단한 배포 시스템이 있습니다.
세 개의 폴더로 구성된 새 웹 루트의 zip 파일을 만듭니다.
Api
Site
Manager
새 폴더에 압축이 풀리고 ( "SITE_REV1"이라고 함) 다음을 호출하는 스크립트가 포함되어 있습니다 (각 웹 루트마다 하나씩).
C:\Windows\system32\inetsrv\appcmd set vdir "www.site.com/" -physicalPath:"SITE_REV1\Site"
이것은 보통 9/10 번 작동합니다. 경우에 따라 웹 루트가 올바르게 업데이트 된 것 같습니다 (IIS 관리자에서 기본 설정을 검사하면 경로가 올바른 것처럼 보입니다). 문제가되는 사이트는 실제로 이전 위치를 가리 킵니다. "수정"할 수있는 유일한 방법은 IIS- 재설정을 실행하는 것입니다. 문제의 응용 프로그램 풀을 재활용하는 것만으로는 충분하지 않습니다.
때로는 재부팅해야 할 필요가있는 것처럼 보이지만 100 % 정확하지는 않습니다 (항상 문제를 해결 한 것은 아닙니다).
appcmd에 결함이 있기를 희망하면서 Powershell과 웹 관리 모듈을 사용하여 스크립트를 다시 작성했지만 동일한 문제가 발생합니다.
Set-ItemProperty "IIS:\Sites\www.site.com" -Name physicalPath -Value "SITE_REV1\Site"
누구든지 이런 경험을 했습니까? 누구나 무슨 일이 일어나고 있는지, 그리고이 문제를 방지하기 위해 무엇을 할 수 있습니까? IIS 재설정을 수행하는 것은 실제로 우리에게 좋은 옵션이 아닙니다. 단일 사이트에서 변경 사항을 배포하려고 할 때마다 서버의 모든 사이트에 영향을 미치기 때문입니다.
편집 : IIS 관리자의 사이트 시작 / 중지 (응용 프로그램 풀이 아님)가 잘못된 물리적 경로를 해결하지만 appcmd를 사용하여 사이트를 중지하고 물리적 경로를 변경 한 다음 시작하면 여전히 고통을 겪고 있습니다. 같은 문제. 난 빈칸에있어