간단한 WCF 지원 Windows 서비스와 통신하기 위해 WCF 클라이언트를 사용하는 간단한 ASP.NET 웹 응용 프로그램이 있습니다.WCF, 클라이언트가 동일한 컴퓨터에 연결되어 있지 않으면 연결할 수 없습니다.
모두 로컬 환경에서 정상적으로 작동합니다. 우리는 또한 잘 작동 dev에 배포했습니다. 그러나 DEV에서는 웹 서버와 응용 프로그램 서버가 같은 시스템에 있습니다.
QA에 배포 했으므로 '소켓 연결이 중단되었습니다. '예외적으로 던졌습니다. 몇 가지 이유로 QA 웹 서버는 WCF 클라이언트/서비스를 통해 QA 앱 서버와 통신 할 수 없습니다. 나는 웹 서버에서 품질 보증 응용 프로그램 서버를 Ping 할 수 것은 나는 웹 서버
에서 품질 보증 응용 프로그램 서버의 HTTP의 WSDL에 연결할 수있는 웹 서버 에서 품질 보증 응용 프로그램 서버를 텔넷 수 있으며, 내가 연결할 수 있습니다 내 로컬 환경/Visual Studio에서 내 QA 서비스에 FINE!
내 QA ASP.NET 응용 프로그램이 QA WCF Windows 서비스와 통신 할 수없는 이유는 무엇입니까?
: 여기<system.serviceModel>
<bindings>
<netTcpBinding>
<binding name="BigFileBinding">
<!-- required to receive files greater then default size of 16kb -->
<readerQuotas maxArrayLength="5242880"/>
</binding>
</netTcpBinding>
</bindings>
<client>
<endpoint address="net.tcp://NJQACNET01:58887/PriceService"
binding="netTcpBinding"
contract="IPriceService"
bindingConfiguration="BigFileBinding"/>
</endpoint>
</client>
</system.serviceModel>
는 서비스 내는 system.serviceModel 섹션이다 : 나는 시도하고 모든 방법이 가능하고, 여전히 이동 ... 여기
클라이언트 내는 system.serviceModel 섹션입니다<system.serviceModel>
<bindings>
<netTcpBinding>
<!-- required to receive files greater then default size of 16kb -->
<binding name="BigFileBinding"
maxReceivedMessageSize="5242880">
<readerQuotas maxArrayLength="5242880"/>
</binding>
</netTcpBinding>
</bindings>
<services>
<service behaviorConfiguration="MetaDataBehavior" name="RK.Pricing.PricingPortal.MarketableSecuritiesService.PriceService">
<endpoint address="net.tcp://localhost:58887/PriceService" binding="netTcpBinding"
contract="RK.Pricing.PricingPortal.MarketableSecuritiesService.IPriceService" bindingConfiguration="BigFileBinding" />
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
<host>
<baseAddresses>
<add baseAddress="http://localhost:58889/PriceService" />
</baseAddresses>
</host>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="MetaDataBehavior">
<serviceMetadata httpGetEnabled="true"/>
<serviceDebug includeExceptionDetailInFaults="true"/>
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
도움을 주셔서 감사합니다. 크게 환영합니다 ...
웹 서버에서 응용 프로그램 서버로 동일한 포트로 텔넷 연결할 수 있습니다 ... 또한 클라이언트 및 서버 모두에서 '보안 모드 = "없음"으로 설정하려고 시도했지만 모든 것이 작동합니다. ..하지만 비용은 얼마나됩니까? ..... – dferraro
비용은 모든 클라이언트가 귀하의 서비스에 전화 할 수있는 것입니다. 보안을 끄는 것은 권장하지 않습니다. 내 대답에 링크 된 지침을 확인하십시오. –
@dferraro, 보안 설정을 none으로 변경하기 전의 보안 설정은 무엇입니까? ASP.net 서버가 같은 도메인에 있습니까? ASP.Net 서버에서 WCF 서버로의 호출은 어떤 사용자 컨텍스트입니까? –