IIS의 ".NET Framework 버전"설정은 실제로 무엇을합니까?


19

이것은 명백한 질문처럼 보이지만 최상위 IIS 구성 패널의 ".NET Framework 버전 변경"단추가 실제로 어떻게 변경되는지 확인하려고합니다. 모든 서버에서 항상 v2.0으로 유지되었습니다. 내 응용 프로그램 풀은 v2.0과 v4.0이 혼합되어 있으며 모든 v4.0 응용 프로그램이 올바르게 작동합니다.

이 버전 번호는 무엇을 제어합니까? 응용 프로그램 풀에 할당되지 않은 이것에 의존하는 것은 무엇입니까? 이상해 보인다.

해당 설정은 다음과 같습니다.

여기에 이미지 설명을 입력하십시오

답변:


13

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

응용 프로그램은 루트 수준 구성 설정에서 항목을 상속합니다.

구성 시스템을 개략적으로 설명하고 구성 계층 구조를 보여주는 이 기사 를 살펴보십시오 .


3

TechNet에 따르면 이 설정은 "기본".NET Framework 버전을 제어합니다.

응용 프로그램 풀 수준에서이 설정은 풀과 관련된 응용 프로그램을 호스팅하는 데 사용되는 프레임 워크를 제어합니다. 서버 수준 에서이 설정은 테스트 서버에서 실행되는 .NET 4.0 또는 2.0 사이트에 즉각적 또는 명백한 영향을 미치지 않는 것으로 보이지만 아무것도하지 않으면 옵션이 될 것입니다. 작업 창의 배포 섹션에 있으므로 가져 오기 / 내보내기 패키지에 영향을 미치는지 궁금합니다. 나는 이것을 테스트 할 것입니다.

iis.net 에서 관련 스레드 를 찾았 습니다. 이 설정은 파일 상단에 추가하지 않고 기본적으로 지원되는 구성 파일 섹션에 영향을 줄 것입니다.

웹을 검색하는 다른 많은 것을 찾지 못했습니다. 꽤 모호한 설정 인 것 같습니다.

편집 : squillman의 대답이 더 좋습니다.


1
나는 똑같은 방식으로 대답하려고했지만 질문을 다시 읽습니다. 그는 특정 응용 프로그램 풀이 아니라 IIS의 최상위 설정에 대해 이야기하고 있습니다. IIS에는 "전역".NET 버전 이 없기 때문에이 설정은 의미가 없습니다 . 응용 프로그램 풀 전용 설정입니다.
— Massimo

네, 당신은 맞습니다, 댓글 주셔서 감사합니다. 답변을 수정해야합니다.
— jbuch

2
또한 .NET 4.5는 4.0의 확장이며 새로운 런타임을 도입하지 않습니다.
— Richard

결과적으로, 원래의 대답은 응용 프로그램 풀과 관련이 있으며 IIS 관리자에서 서버 노드를 클릭하면 "작업"창에서 ".NET Framework 버전 변경"옵션을 참조하고 있음이 분명합니다. 수단. 따라서 기본적으로 나는 도움이되지 않았습니다. 몇 분 안에 더 나은 답변을 찾지 못하면 답변을 삭제하려고합니다.
— jbuch
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.