web-servicesiissoaphttpshostheaders

Including Port number in HTTP HOST header causes Service Unavailable error


We have a WebService running on HTTPS. If I use SOAPUI and make request at: https://testservice.mydomain.com/WcfService.svc, it works fine. However the client reported they are getting 503 Service Unavailable error.

In their HTTP HOST header I see --> testservice.mydomain.com:443. To replicate that I created a test C# client and manually set the HOST header to include 443 port in request. I get the same error and nothing gets logged in IIS Website logs. Similarly in SOAPUI if I hit URL: https://testservice.mydomain.com:443/WcfService.svc (have to do this as can't manually change HOST header in SOAPUI) same Service Unavailable error is returned.

If I access the service through browser, then I'm able to access even after including port number in URL.I tried accessing online available WebServices and I can access them correctly with or without the explicit port number.

Is this an IIS configuration issue? We use IIS 7.5 and use HOST headers to host multiple sites. Actually I don't know much about IIS so just speculating.


Solution

  • Our network team resolved the issue. It was a problem with how the Netscaler was configured; somehow it was not passing on the requests -which had port number in header, to correct IP (where the WebService was hosted).
    Sorry I can't explain NetScaler resolution in detail. I twice asked the network people and their explanation went way over my head. But in any case, if anyone has similar problem, check out your Loadbalancer, DNS and Firewall.