2011-03-29 4 views
2

ASP.net 웹 사이트에서 간단한 WCF 웹 서비스를 만들었습니다.WCF 나머지 웹 서비스는 로컬 호스트에서 작동하지만 호스트에서는 작동하지 않습니다.

에 의해 호스팅되는 웹 서비스 IIS 예상대로 나는 정확한에 "Hello World"응답을 http://localhost/myservice.svc/HelloWorld에 exemple에 대한 액세스 할 때 localhost의 예를 잘 작동합니다.

내 컴퓨터 호스트 이름 (http://mycomputer/myservice.svc/HelloWorld)으로 액세스하면 오류 404 응답이 표시됩니다. 이것은 사이트의 나머지 (주로 aspx 페이지)가 두 가지 방법으로 문제없이 액세스 할 수 있으므로 특히 혼란 스럽습니다.

IIS에서 구성 문제가 의심 스럽지만 실제로 실마리가 없습니다. 어떤 도움이라도 대단히 감사 할 것입니다.

내 서비스 엔드 포인트는 다음

[EndpointNotFoundException]: There was no channel actively listening at 'http://mycomputer.ad-ent.lan.net/myservice.svc/HelloWorld'. This is often caused by an incorrect address URI. Ensure that the address to which the message is sent matches an address on which a service is listening. 
à System.ServiceModel.Activation.HostedHttpTransportManager.HttpContextReceived(HostedHttpRequestAsyncResult result) 
    à System.ServiceModel.Activation.HostedHttpRequestAsyncResult.HandleRequest() 
    à System.ServiceModel.Activation.HostedHttpRequestAsyncResult.BeginRequest() 
[HttpException]: There was no channel actively listening at 'http://mycomputer.ad-ent.lan.net/myservice.svc/HelloWorld'. This is often caused by an incorrect address URI. Ensure that the address to which the message is sent matches an address on which a service is listening. 
    à System.ServiceModel.AsyncResult.End[TAsyncResult](IAsyncResult result) 
    à System.ServiceModel.Activation.HostedHttpRequestAsyncResult.End(IAsyncResult result) 
    à System.ServiceModel.Activation.HostedHttpRequestAsyncResult.ExecuteSynchronous(HttpApplication context, Boolean flowContext) 
    à System.ServiceModel.Activation.HttpHandler.ProcessRequest(HttpContext context) 
    à System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() 
    à System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) 
+0

web.config의 내용 - 요소는 무엇입니까? MSDN에서 localhost로만 제한하는 항목은 볼 수 없지만 여기서는 전문가가 아니므로 문제가있는 부분이 어디인지 추측 할 수 있습니다. – Rup

+0

실행중인 IIS의 버전은 무엇입니까? –

+0

iis admin에서 svc 파일을 마우스 오른쪽 버튼으로 클릭하고 "찾아보기"를 선택하면 어떻게됩니까? –

답변

0
+0

을 삭제하기로 결심했다. 그는 그가 비 로컬 -IP를 사용하는 .aspx 페이지에 액세스 할 수 있다고 말했기 때문에 나에게 그렇게 들리지는 않는다. – Rup

+0

wireshark를 설치하고 그 기능을 확인하십시오. 그것은 당신에게 요청이 어디로 가는지에 대한 단서를 줄 수 있습니다. http://www.wireshark.org/ –

0

서버와의 NAT 및 방화벽 설정을 확인하시기 바랍니다, 다음과 같은 체크 아웃 :

<endpoint address="" binding="webHttpBinding" contract="MyService.Service" /> 

서버에서 오류 스택 트레이스는 다음과 기사

Working with NATs and Firewalls

+0

내 서버가 내 컴퓨터에 있고 해당 포트 (80)가 활짝 열려있어서 나머지 웹 사이트가 작동합니다. 문제는 다른 곳에있다. – Falanwe

+0

아주 정확합니다. 나는 –

0

아주 오래된 글입니다. 그러나 역사와 지식을 위해서. 프록시를 사용할 가능성이 있습니다.이 경우 브라우저 설정에서 컴퓨터 이름에 대한 예외를 추가해야합니다.

관련 문제