2013-12-10 4 views
2

WCF 4.0 다중 계층 서비스 개발 설명서를 읽고 IIS를 사용하여 WCF와 함께 간단한 Hello World 구현을 시도했습니다.WCF IIS 오류 403

HelloWorldService 프로젝트와 HostDevServer 프로젝트 (시작 프로젝트)가 있습니다. 나는 두 개의 파일을 듣고 디렉토리를 볼 수 있지만, 대신 나는 다음 오류 메시지가 얻을 :

HTTP Error 403.14 - Forbidden 
The Web server is configured to not list the contents of this directory. 

대부분의 경우 원인 :

A default document is not configured for the requested URL, and directory browsing is not enabled on the server. 

내가 무슨 짓을 :

  • 사용 가능 디렉터리 검색을 IIS 관리자에서
  • 기본 문서가 있는지 확인합니다.
  • 실행 명령은 다음에 대한 화면에서

사실 IIS에 버전 7.5을 말한다하고 말한다 브라우저에서 "8.0 자세한 오류를 IIS .. : 구성 /section:system.webServer/directoryBrowse/사용 가능 설정 APPCMD 명령어 . " 이것이 문제와 관련이 있는지 나는 모른다.

개발을 위해 Visual Studio 2013을 사용합니다.

<system.web> 
    <compilation debug="true" targetFramework="4.5" /> 
    <httpRuntime targetFramework="4.5" /> 
</system.web> 

사람이이 문제를 해결하는 방법을 알고 있나요 : 아래의 Web.config?

+0

web.config를 게시 할 수 있습니까? – ShellNinja

+0

web.config로 게시물을 업데이트했습니다. – ronaldm

+0

내 평소 용의자는 서비스가 상주하는 폴더의 사용 권한입니다. IIS_IUSRS가 하드 드라이브의 웹 서비스 폴더에 대한 읽기 권한을 가지고 있음을 IUSR 및/또는 (나는 기억하지 못합니다.) 또는 appPool이 다른 자격 증명 집합에서 실행중인 경우이 사용자 계정과 동일하게 수행하십시오. – Snorre

답변

2

WCF가 자체 호스트로 호스팅되었으므로 의심 스럽습니다. extensionless uri 아래에 있습니다.

이것은 작동하지 않습니다. WCF 서비스는 *.svc 활성 자 아래에서 호스팅됩니다. 이 확장은 IIS에 적절한 호스트 팩토리를 찾아 서비스를 만들어야 함을 알립니다.

+0

답변 해 주셔서 감사합니다. 내 문제를 해결하고 Hello World 예제를 작동 시키려면 어떻게해야합니까? – ronaldm

+1

확장없는 uri를 추가하거나 .svc 파일을 추가하고 직접 참조해야합니다. 이 페이지에서 "파일없는 활성화"를 검색하십시오. http://msdn.microsoft.com/en-us/library/ee354381.aspx –

0

웹 사이트를 IIS 관리자에 추가 했으므로 이제 작동 중입니다. 파일에 액세스 할 수있는 권한을 편집해야했지만 지금은 문제없이 페이지에 액세스 할 수 있습니다.

나중에 * .svc 활성화 자에 대해 설명하므로 책을 더 읽어야합니다.