IIS - Unrecognized attribute 'targetFramework'. Note that attribute names are case-sensitive. (D:\lowSite4\web.config line 11)
웹 애플리케이션을 IIS에 연결하고 실행했더니 "targetFramework" 속성을 인식할 수 없다는 오류가 발생합니다. 이때의 이벤트 로그에는 다음과 같은 항목이 남아 있습니다.
Event code: 3008 
Event message: A configuration error has occurred. 
Event time: 2019-09-09 오후 2:55:37 
Event time (UTC): 2019-09-09 오전 5:55:37 
Event ID: de225f0c559645bcb5a1b2df3c721d3a 
Event sequence: 1 
Event occurrence: 1 
Event detail code: 0 
 
Application information: 
    Application domain: /LM/W3SVC/7/ROOT-154-132124821373916102 
    Trust level: Full 
    Application Virtual Path: / 
    Application Path: D:\lowSite4\ 
    Machine name: TESTPC 
 
Process information: 
    Process ID: 4540 
    Process name: w3wp.exe 
    Account name: IIS APPPOOL\lowSite4 
 
Exception information: 
    Exception type: ConfigurationErrorsException 
    Exception message: Unrecognized attribute 'targetFramework'. Note that attribute names are case-sensitive. (D:\lowSite4\web.config line 11) 
 
Request information: 
    Request URL: http://TESTPC:8005/default.aspx 
    Request path: /default.aspx 
    User host address: 192.168.0.12 
    User:  
    Is authenticated: False 
    Authentication Type:  
    Thread account name: IIS APPPOOL\lowSite4 
 
Thread information: 
    Thread ID: 5 
    Thread account name: IIS APPPOOL\lowSite4 
    Is impersonating: False 
    Stack trace:    at System.Web.HttpRuntime.HostingInit(HostingEnvironmentFlags hostingFlags)
물론, 해당 web.config에는 다음과 같이 targetFramework 항목이 존재합니다.
<?xml version="1.0"?>
<configuration>
    <system.web>
      <compilation debug="true" targetFramework="4.0" />
    </system.web>
</configuration>
원인은, 이 웹 응용 프로그램은 .NET Framework 4.0을 대상으로 만들어진 것인데, 호스팅하는 IIS 측의 AppPool에 설정된 닷넷 버전은 2.0이었기 때문입니다. 따라서 4.0으로 바꾸기만 하면,
 
잘 동작합니다. ^^
[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]