2013-08-19 3 views
0

로컬 네트워크에서 완벽하게 작동하지만 원격으로 연결할 수없는자가 호스팅 REST 서비스 (C#)가 있습니다. 내 호스팅 코드는 다음과 같습니다.로컬 네트워크에서만 액세스 할 수있는 WCF REST 서비스 (자체 호스팅)

static Uri baseAddress = new Uri("http://m.y.i.p:8080"); 
WebServiceHost serviceHost = new WebServiceHost(typeof(WebService.RestService), 
    baseAddress); 
serviceHost.Open(); 

(Windows Forms에서 실행 됨, BTW).

브라우저에서, 나는 10.1.1.1:8080/test 입력
<?xml version="1.0"?> 
<configuration> 
<system.serviceModel> 
<bindings> 
</bindings> 
<services> 
    <service name="WebService.RestService" behaviorConfiguration="Default"> 
    <host> 
     <baseAddresses> 
     </baseAddresses> 
    </host> 
    <endpoint address="" binding="webHttpBinding" 
      behaviorConfiguration="webBehavior" 
      contract="WebService.ICarga"> 
    </endpoint> 
    </service> 
</services> 
<behaviors> 
    <endpointBehaviors> 
    <behavior name="webBehavior"> 
     <webHttp /> 
    </behavior> 
    </endpointBehaviors> 
    <serviceBehaviors> 
    <behavior name="Default"> 
     <serviceMetadata httpGetEnabled="true"/> 
     <dataContractSerializer maxItemsInObjectGraph="2147483647"/> 
    </behavior> 
    </serviceBehaviors> 
</behaviors> 
</system.serviceModel> 
<startup> 
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/> 
</startup> 
</configuration> 

, 그것은 내가 원하는 정확하게 보여줍니다 여기에

은의 app.config입니다. 하지만 m.y.p. : 8080/test를 입력하면 연결할 수 없습니다. 방화벽이 꺼져 있고 관리자로 실행 중이며 이미 netsh 명령을 시도했습니다. 포트 8080이 내 PC로 올바르게 전달됩니다. 어떻게하면 원격으로 액세스 할 수 있습니까?

감사합니다.

편집 : 앞으로이 문제를 조사하는 사람들에게 라우터에 문제가 있습니다 (IP가 변경되어 라우터에서 변경되지 않았습니다). App.config 권한을 정의하면 모든 것이 작동합니다. 이 문제가 발생하면 코드를 다시 확인하고 필요한 경우 네트워크가 예상대로 작동하는지 확인하고 필요한 경우 방화벽을 끄고 관리자가 아닌 경우 대답을 this question 또는 this MS page으로 사용하여 원하는 포트를 소유하십시오 . 이러한 테스트하기 전에, 제가 아파치에 대해 동일한 포트를 사용하고이 일 때문에

+1

이 더 나는 그것을 추측 DNS – Yahia

+0

에 문제가 같은 소리에가, DNS 아니다 (당연히 나는 아파치를 사용하지 않고있다). – user1531978

+0

도움이되는 정보가 충분하지 않습니다 ... 이벤트 로그를 확인하십시오 ... – Yahia

답변

1

변경

new Uri("http://m.y.i.p:8080"); 

new Uri("http://0.0.0.0:8080"); 
+0

답변을 주셔서 감사합니다. 그러나 아직 도달 할 수 없습니다 ... – user1531978

+0

+1로 설정하는 것이 도움이 될 것입니다. 모든 PC에있는 IP는 프로그램을 사용합니다. – user1531978