IIS의 “.NET Framework 버전”설정은 실제로 무엇을합니까? 질문처럼 보이지만 최상위 IIS 구성 패널의 “.NET

이것은 명백한 질문처럼 보이지만 최상위 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의 대답이 더 좋습니다.