Three different answers for web service location

Oct 22, 2010 at 5:54 PM

Hi,

I'm trying to launch a WCF service over SSL on IIS 6 through a load balancer.  It looks like setting the "location" config entry is only updating the soap12:address.  My EndPointReference address is still using the machine name.  In addition - the WSDL page is showing the correct address but with "http".  So the three addresses I have are:

WSDL as viewed in web browser at https://www.mydomain.com/WebServices/mydomainws.svc:  http://www.mydomain.com/WebServices/mydomainws.scv

Clicking the above link brings me to an actual wsdl file with the following service entry:

  <wsdl:service name="mydomainws">
    <wsdl:port name="WSHttpBinding_Imydomainws" binding="tns:WSHttpBinding_Imydomainws">
      <soap12:address location="https://www.mydomain.com/WebServices/mydomainws.svc" />
      <wsa10:EndpointReference>
        <wsa10:Address>
        https://ServerName/WebServices/mydomainws.svc</wsa10:Address>
      </wsa10:EndpointReference>
    </wsdl:port>
  </wsdl:service>

I'm not sure what to try next.  Would appreciate any insight anyone might have.  Thanks.

My server config file has the following serviceModel entries:

    <system.serviceModel>
        <bindings>
            <wsHttpBinding>
                <binding name="TransportSecurity">
                    <security mode="Transport">
                        <message clientCredentialType="None"/>
                        <transport clientCredentialType="None"/>
                    </security>
                </binding>
            </wsHttpBinding>
        </bindings>
        <services>
            <service name="mydomain.ws.mydomainws" behaviorConfiguration="mydomainwsBehavior">
                <!-- Service Endpoints -->
                <endpoint address="" behaviorConfiguration="CorrectEndPoint" binding="wsHttpBinding" bindingConfiguration="TransportSecurity" contract="mydomain.ws.Imydomainws"/>
                <endpoint address="mex" behaviorConfiguration="CorrectEndPoint" binding="mexHttpsBinding" contract="IMetadataExchange"/>
            </service>
        </services>
        <behaviors>
            <serviceBehaviors>
                <behavior name="mydomainwsBehavior">
                    <!-- To avoid disclosing metadata information, set the value below to false and remove the metadata endpoint above before deployment -->
                    <serviceMetadata httpGetEnabled="true" />
                    <!-- To receive exception details in faults for debugging purposes, set the value below to true.  Set to false before deployment to avoid disclosing exception information -->
                    <serviceDebug includeExceptionDetailInFaults="true"/>
                </behavior>
            </serviceBehaviors>
            <endpointBehaviors>
                <behavior name="CorrectEndPoint">
                    <wsdlExtensions location="https://www.mydomain.com/WebServices/mydomainws.svc" singleFile="true"/>
                </behavior>
            </endpointBehaviors>
        </behaviors>

        <serviceHostingEnvironment multipleSiteBindingsEnabled="true" />

        <extensions>
            <behaviorExtensions>
                <add name="wsdlExtensions" type="WCFExtras.Wsdl.WsdlExtensionsConfig, WCFExtras, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"/>
            </behaviorExtensions>
        </extensions>

    </system.serviceModel>