1

Our network team changed our public IP last night, now my WCF is no longer accessible via my php code. I am calling wcf via A name and not via IP.

I have tested using a C# test console (both inside and outside the network), and it still works fine there. So i am thinking that possibly the php server (hosted at Rackspace) has cached the old IP?

This code previously worked fine in php code. Once this is returned, I call the web method.

return new SoapClient("http://x.y.com:8082/z.svc?wsdl", array('cache_wsdl' => WSDL_CACHE_NONE));

Error being returned from web method is: Page Failed to Load SOAP-ERROR: Parsing WSDL: Couldn't load from 'http://x.y.com:8082/z.svc?wsdl' : failed to load external entity "http://x.y.com:8082/z.svc?wsdl"

EDIT: setup is not my issue. If I explicity state the IP address, instead of A record, I am able to access. Seems to be a cache issue with the Rackspace server where php code is.

RSSM
  • 669
  • 7
  • 19
  • possible duplicate of [SOAP PHP fault parsing WSDL: failed to load external entity?](http://stackoverflow.com/questions/12875409/soap-php-fault-parsing-wsdl-failed-to-load-external-entity) – taxicala May 06 '15 at 18:59
  • 1
    Can you check the DNS translation, or firewall restrictions between on your PHP server? – Jan Zahradník May 06 '15 at 19:01
  • $result = dns_get_record("x.y.com"); without port retuns old IP – RSSM May 06 '15 at 19:14
  • I've explicitly added the IP instead of A record and this now works. This is just a temp fix though, as I really would like to resolve the real issue, in case we need to failover to backup. – RSSM May 06 '15 at 19:31

0 Answers0