티스토리 뷰

IIS 환경 (Windows 7 Pro 기준) 각종 오류 표출 해결 방안 모음집


회사에서 WEB(MVC)-WPF(Local프로그램)-WCF(웹? 서비스? 개념조차 아직 없다....) 의 형태로

구성된 솔루션 개발 및 유지보수를 맡게 되었는데.. 사실 본질적으로 C# 을 쓴다는 것 외에

공통점이 없다. 라고 할 수 있는것 같다....


 뭐 서론이야 이렇고 WCF 개발 환경을 구성해서 실제 솔루션에 반영되기전 Local 에서 테스트 환경을 구축하려는데

WCF를 처음 접해봐서 그런가... 머릿속이 새하얘지는 기분.. 검색을 한 두세시간 한 것 같다.

나의 현재 상황과 맞지 않으나, 오류내용은 같아 해결방법을 찾은 경우가 많아서

다음에 구성할 때 잊을까 정리해놓는다.


구축순서는 아래와 같았다.


* 로컬환경 : Windows 7 Pro 64 bit


1. IIS 웹서비스 구성 (제어판-프로그램 및 기능-Windows 기능 사용/사용 안함.... 등등)

 ; 검색하다보니 처음 구성할 때도 주의할점이 있었는데 나의 경우에는 MVC 기반이 아닌 asp.net 시절부터 해오던 습관에

  용도도 모르고 '그걸 해야한다' 라는 생각에 당연한 듯 넘어갔으나.. 필수 였던 것이


  Windows 기능 사용/사용 안함 => 인터넷 정보 서비스 => 응용 프로그램 개발 기능 => ASP.NET 체크


  이 것이였다. 기능적인건 추후에 자세히 알아봐야겠지만 습관상 응용 프로그램 개발 기능을 다 체크한다......

 과부화 그런것도 연관이 있을라나.......

  

2. WCF 배포 프로젝트 빌드-IIS 로 구성


정도로 간략하게 설명할 수 있는데.. 문제가 여기서부터 발생 두둥..


문제1> HTTP 오류 500.19 - Internal Server Error

 : 요청된 페이지와 관련된 구성 데이터가 잘못되어 해당 페이지에 엑세스할 수 없습니다.

  projectMaping 구문이 문제라는 것


 문제 원인 & 해결방법?

  원인 자체로는 개발된 WCF 프로젝트가 .NET Framework 4.0 이상으로 개발되어 있었다. 라는 추측이고.


 IIS 관리자 => 서버 하위의 응용 프로그램 풀 => 응용프로그램 풀 추가

 1. 이름에 구분할 이름 (미리 생성되어있다면 속성에서 변경)

 2. .NET Framework 버전은 4.030319 혹은 4.0 으로 설정

 3. 관리되는 파이프라인 모드 '클래식' 설정

 4. 응용 프로그램 풀 즉시 시작 체크 추가/수정

 5. 등록한 사이트 -> [작업] 란의 기본 설정 -> 상단 [설정] -> 풀 변경


문제2> HTTP 오류 404.3 - Not Found

 : 확장 구성 때문에 요청한 페이지를 처리할 수 없습니다. 페이지가 스크립트인 경우 처리기를 추가하십시오. (중략)


 문제 원인 & 해결방법?

  HTTP 단 동작에 관한 처리를 Framework 단에서 하는 것 같은데 이것도 나중에 자세히 봐야할 듯.

  (이제보니 IIS 서버를 구축했다곤 하나 거의 뭐 잡지식! 극일부만 알고 있는 것 같다...)


 Windows 기능 사용/사용 안함 => Microsoft .NET Framework 3.5.1

 => Windows Communication Foudation HHTP Activation/Non-HTTP Activation 둘다 체크

 => 문제 3과 직결되는데 여기서 이걸 빼먹었다.  문제 3 고고


문제3> HTTP 오류 404.17 - Not Found

 : 요청한 콘텐츠가 스크립트로 표시되고 정적 파일 처리기에서 처리되지 않습니다.


 문제 원일 & 해결방법?

  문제는 프로젝트에서 사용하는 Framework 가 없기 때문인데, 단순히 .Net framework 를 다운받아 설치하는 걸론

 해결이 불가하다. 해보진 않았지만, 애초에 시도가 되있기 때문에.. (PC에 프레임워크 버전별로 설치되어있다.)


 Visual Studio 에서 제공하는 개발자 명령 프롬프트를 이용하거나 아래의 경로까지 다 입력해주어야 한다.

 명령 프롬프트 실행 => Windows\Microsoft.NET\Framework\v4.0.30.319\aspnet_regiis -i

 (VS 개발자 명령 프롬프트에서는 aspnet_regiis -i 만 입력해도 된다!)


 c.f.g. Windows 10 의 경우 해당 명령어를 사용할 수 없어 불가함. 해결 방법은 1 에서 설명했던

응용 프로그램 개발 기능에 들어가서 해당 Framework 에 맞는 ASP.NET 3.5 / ASP.NET 4.6 을 체크하여 설치하여 해결!



뭐 겪었던 문제와 해결방법은 이것... 당장에는 서비스까지 띄우고 모든게 정상화는 아니지만

일부 테스트는 정상적으로 먹는다.. 일단 마무리.



아직 갈길이 멀다 MVC, WCF, WPF.. + IIS 이쒸...





참조1-IIS 7.0, 7.5, 8.0 HTTP 상태코드

- https://support.microsoft.com/ko-kr/help/943891/the-http-status-code-in-iis-7.0,-iis-7.5,-and-iis-8.0





댓글