이것은 명백한 질문처럼 보이지만 최상위 IIS 구성 패널의 “.NET Framework 버전 변경”단추가 실제로 어떻게 변경되는지 확인하려고합니다. 모든 서버에서 항상 v2.0으로 유지되었습니다. 내 응용 프로그램 풀은 v2.0과 v4.0이 혼합되어 있으며 모든 v4.0 응용 프로그램이 올바르게 작동합니다.
이 버전 번호는 무엇을 제어합니까? 응용 프로그램 풀에 할당되지 않은 이것에 의존하는 것은 무엇입니까? 이상해 보인다.
해당 설정은 다음과 같습니다.
답변
IIS가 .NET에 대한 다른 루트 수준 구성 파일을 가리 키도록합니다. 이 루트 레벨 파일은 다음의 프레임 워크 설치 폴더에 있습니다.%systemroot%\Microsoft.NET\Framework\<version>\CONFIG
IIS는 자체 구성 파일 %systemroot%\system32\inetsrv\config\applicationHost.config
과 .NET 구성 파일을 찾습니다 .
%systemroot%\Microsoft.NET\Framework\<version>\CONFIG\machine.config
.NET 버전을 변경하면 machine.config가 사용됩니다. 예를 들어, v2.050727로 변경하면을 볼 수 있습니다 %systemroot%\Microsoft.NET\Framework\v2.0.50727\CONFIG\machine.config
. v4.0.30319로 변경하면%systemroot%\Microsoft.NET\Framework\v4.0.30319\CONFIG\machine.config
응용 프로그램은 루트 수준 구성 설정에서 항목을 상속합니다.
구성 시스템을 개략적으로 설명하고 구성 계층 구조를 보여주는 이 기사 를 살펴보십시오 .
답변
TechNet에 따르면 이 설정은 “기본”.NET Framework 버전을 제어합니다.
응용 프로그램 풀 수준에서이 설정은 풀과 관련된 응용 프로그램을 호스팅하는 데 사용되는 프레임 워크를 제어합니다. 서버 수준 에서이 설정은 테스트 서버에서 실행되는 .NET 4.0 또는 2.0 사이트에 즉각적 또는 명백한 영향을 미치지 않는 것으로 보이지만 아무것도하지 않으면 옵션이 될 것입니다. 작업 창의 배포 섹션에 있으므로 가져 오기 / 내보내기 패키지에 영향을 미치는지 궁금합니다. 나는 이것을 테스트 할 것입니다.
iis.net 에서 관련 스레드 를 찾았 습니다. 이 설정은 파일 상단에 추가하지 않고 기본적으로 지원되는 구성 파일 섹션에 영향을 줄 것입니다.
웹을 검색하는 다른 많은 것을 찾지 못했습니다. 꽤 모호한 설정 인 것 같습니다.
편집 : squillman의 대답이 더 좋습니다.