Это поздний ответ, но у меня была такая же проблема с некоторыми из наших служб WCF. Если вы используете .NET 4.5, как и в предыдущем ответе, используйте? SingleWSDL, но если вы не ориентируетесь на .NET 4.5, я добавил следующее в мой web.config, чтобы решить эту проблему ...
<useRequestHeadersForMetadataAddress>
<defaultPorts>
<add port="80" scheme="http" />
<add port="443" scheme="https" />
</defaultPorts>
</useRequestHeadersForMetadataAddress>
Это относится к вашему поведению. Таким образом, мне не нужно было выравнивать WSDL, потому что все ссылки были на MyURL, а не на MyServer.
Надеюсь, что это поможет другим с подобной проблемой.