14

I've installed a SSL certificate in IIS.

Now when I navigate to my domain https://www.example.com/ the page loads correctlty. But when I try to approach a web service (which normally works perfect over http) over https: https://www.example.com/service.svc/newprofile/?id=8&ipaddress=124.162.13.109 I get:

The resource cannot be found.

Description: HTTP 404. The resource you are looking for (or one of its dependencies) could have been removed, had its name changed, or is temporarily unavailable.  Please review the following URL and make sure that it is spelled correctly. 

Requested URL: /service.svc/newprofile/

I also checked here

But renaming webHttpBinding to basicHttpBinding throws an unsupported error in combination with jsonp. Also the service element name in the web.config matches the fully qualified named of the class that implements my contract.

Here's my web.config

  <system.serviceModel>
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
<bindings>
  <webHttpBinding>
    <binding name="webHttpBindingWithJsonP" crossDomainScriptAccessEnabled="true">          
    </binding>
    <binding name="webHttpsBindingWithJsonP" crossDomainScriptAccessEnabled="true">
      <security mode="Transport"></security>
    </binding>        
  </webHttpBinding>
</bindings>
<client />
<services>
  <service name="RestService.service">
    <endpoint behaviorConfiguration="webHttp" binding="webHttpBinding" contract="RestService.Iservice" />
    <endpoint address="/service.svc" binding="webHttpBinding" bindingConfiguration="webHttpBindingWithJsonP" contract="RestService.Iservice" />
    <endpoint address="/service.svc" binding="webHttpBinding" bindingConfiguration="webHttpsBindingWithJsonP" contract="RestService.Iservice" />
  </service>
</services>
    <behaviors>
    <serviceBehaviors>
      <behavior name="">
        <serviceMetadata httpGetEnabled="true" />
        <serviceDebug includeExceptionDetailInFaults="true" />
      </behavior>
      </serviceBehaviors>
      <endpointBehaviors>
        <behavior name="webHttp">
          <webHttp />
        </behavior>
        <behavior name="webHttpBehavior">
          <webHttp />
        </behavior>        
      </endpointBehaviors>
    </behaviors>
  </system.serviceModel>

I checked the wsdl: http://www.example.com/service.svc?wsdl

<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsx="http://schemas.xmlsoap.org/ws/2004/09/mex" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:wsa10="http://www.w3.org/2005/08/addressing" xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:wsap="http://schemas.xmlsoap.org/ws/2004/08/addressing/policy" xmlns:msc="http://schemas.microsoft.com/ws/2005/12/wsdl/contract" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://tempuri.org/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" name="service" targetNamespace="http://tempuri.org/">
<wsdl:types>
    <xsd:schema targetNamespace="http://tempuri.org/Imports">
        <xsd:import schemaLocation="http://www.example.com/service.svc?xsd=xsd0" namespace="http://tempuri.org/"/>
        <xsd:import schemaLocation="http://www.example.com/service.svc?xsd=xsd1" namespace="http://schemas.microsoft.com/2003/10/Serialization/"/>
        <xsd:import schemaLocation="http://www.example.com/service.svc?xsd=xsd2" namespace="http://schemas.datacontract.org/2004/07/RestService"/>
        <xsd:import schemaLocation="http://www.example.com/service.svc?xsd=xsd3" namespace="http://schemas.microsoft.com/Message"/>
        <xsd:import schemaLocation="http://www.example.com/service.svc?xsd=xsd4" namespace="http://schemas.datacontract.org/2004/07/AjaxControlToolkit"/>
        <xsd:import schemaLocation="http://www.example.com/service.svc?xsd=xsd5" namespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays"/>
    </xsd:schema>
</wsdl:types>
<wsdl:message name="Iservice_newProfile_InputMessage">
    <wsdl:part name="parameters" element="tns:newProfile"/>
</wsdl:message>

When I check over https: https://www.example.com/service.svc?wsdl

<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsx="http://schemas.xmlsoap.org/ws/2004/09/mex" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:wsa10="http://www.w3.org/2005/08/addressing" xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:wsap="http://schemas.xmlsoap.org/ws/2004/08/addressing/policy" xmlns:msc="http://schemas.microsoft.com/ws/2005/12/wsdl/contract" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://tempuri.org/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" name="service" targetNamespace="http://tempuri.org/">
<wsdl:types>
<xsd:schema targetNamespace="http://tempuri.org/Imports">
<xsd:import schemaLocation="https://www.example.com/service.svc?xsd=xsd0" namespace="http://tempuri.org/"/>
<xsd:import schemaLocation="https://www.example.com/service.svc?xsd=xsd1" namespace="http://schemas.microsoft.com/2003/10/Serialization/"/>
<xsd:import schemaLocation="https://www.example.com/service.svc?xsd=xsd2" namespace="http://schemas.datacontract.org/2004/07/RestService"/>
<xsd:import schemaLocation="https://www.example.com/service.svc?xsd=xsd3" namespace="http://schemas.microsoft.com/Message"/>
<xsd:import schemaLocation="https://www.example.com/service.svc?xsd=xsd4" namespace="http://schemas.datacontract.org/2004/07/AjaxControlToolkit"/>
<xsd:import schemaLocation="https://www.example.com/service.svc?xsd=xsd5" namespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays"/>
</xsd:schema>
</wsdl:types>
<wsdl:message name="Iservice_newProfile_InputMessage">
<wsdl:part name="parameters" element="tns:newProfile"/>
</wsdl:message> 

The service in this case is defined as:

    <OperationContract()> _
<Web.WebInvoke(Method:="GET", ResponseFormat:=Web.WebMessageFormat.Json, BodyStyle:=Web.WebMessageBodyStyle.Bare, _
       UriTemplate:="newprofile/?id={id}&ipaddress={ipaddress}")> _
        Function newProfile(ByVal Id As String,  Optional ByVal IPAddress As String = "") As service.Profile

My webservice

Namespace RestService
    <AspNetCompatibilityRequirements(RequirementsMode:=AspNetCompatibilityRequirementsMode.Allowed)> _
    Public Class service
        Implements Iservice

        'my code
    End Class
End Namespace   

I enabled tracing in my web.config as well, here's part of the log (SO does not allow to post it all):

<E2ETraceEvent
    xmlns="http://schemas.microsoft.com/2004/06/E2ETraceEvent">
    <System
        xmlns="http://schemas.microsoft.com/2004/06/windows/eventlog/system">
        <EventID>262155</EventID>
        <Type>3</Type>
        <SubType Name="Error">0</SubType>
        <Level>2</Level>
        <TimeCreated SystemTime="2014-10-27T19:07:08.0773174Z" />
        <Source Name="System.ServiceModel" />
        <Correlation ActivityID="{f7c83e1b-3e28-4e4f-8978-23f5073be422}" />
        <Execution ProcessName="w3wp" ProcessID="1428" ThreadID="19" />
        <Channel/>
        <Computer>MYPC</Computer>
    </System>
    <ApplicationData>
        <TraceData>
            <DataItem>
                <TraceRecord
                    xmlns="http://schemas.microsoft.com/2004/10/E2ETraceEvent/TraceRecord" Severity="Error">
                    <TraceIdentifier>http://msdn.microsoft.com/nl-NL/library/System.ServiceModel.Channels.HttpChannelMessageReceiveFailed.aspx</TraceIdentifier>
                    <Description>Failed to lookup a channel to receive an incoming message. Either the endpoint or the SOAP action was not found.</Description>
                    <AppDomain>/LM/W3SVC/1/ROOT-2-130589104148009222</AppDomain>
                    <Source>System.ServiceModel.Activation.HostedHttpTransportManager/33997547</Source>
                    <ExtendedData
                        xmlns="http://schemas.microsoft.com/2006/08/ServiceModel/StringTraceRecord">
                        <IsRecycling>False</IsRecycling>
                    </ExtendedData>
                </TraceRecord>
            </DataItem>
        </TraceData>
    </ApplicationData>
</E2ETraceEvent>
<E2ETraceEvent
    xmlns="http://schemas.microsoft.com/2004/06/E2ETraceEvent">
    <System
        xmlns="http://schemas.microsoft.com/2004/06/windows/eventlog/system">
        <EventID>131074</EventID>
        <Type>3</Type>
        <SubType Name="Error">0</SubType>
        <Level>2</Level>
        <TimeCreated SystemTime="2014-10-27T19:07:08.0803197Z" />
        <Source Name="System.ServiceModel" />
        <Correlation ActivityID="{00000000-0000-0000-0000-000000000000}" />
        <Execution ProcessName="w3wp" ProcessID="1428" ThreadID="19" />
        <Channel/>
        <Computer>MYPC</Computer>
    </System>
    <ApplicationData>
        <TraceData>
            <DataItem>
                <TraceRecord
                    xmlns="http://schemas.microsoft.com/2004/10/E2ETraceEvent/TraceRecord" Severity="Error">
                    <TraceIdentifier>http://msdn.microsoft.com/nl-NL/library/System.ServiceModel.Diagnostics.EventLog.aspx</TraceIdentifier>
                    <Description>Wrote to the EventLog.</Description>
                    <AppDomain>/LM/W3SVC/1/ROOT-2-130589104148009222</AppDomain>
                    <ExtendedData
                        xmlns="http://schemas.microsoft.com/2006/08/ServiceModel/DictionaryTraceRecord">
                        <CategoryID.Name>EventLogCategory</CategoryID.Name>
                        <CategoryID.Value>5</CategoryID.Value>
                        <InstanceID.Name>EventId</InstanceID.Name>
                        <InstanceID.Value>3221356547</InstanceID.Value>
                        <Value0>System.ServiceModel.Activation.HostedHttpRequestAsyncResult/52951402</Value0>
                        <Value1>System.Web.HttpException (0x80004005): There was no channel actively listening at 'https://www.example.com/service.svc/newprofile/?id=8&amp;amp;ipaddress=25.62.133.109'. This is often caused by an incorrect address URI. Ensure that the address to which the message is sent matches an address on which a service is listening. ---&amp;gt; System.ServiceModel.EndpointNotFoundException: There w

I want this service to be available over both http and https.

I also checked my web.config and global.asax.vb, but I'm not doing anything specifically to https requests, also not in IIS...what can this issue be?

UPDATE

Ok, removed some endpoints and now trying to figure out what to provide under address value of the endpoint. With this config below I get the error: The endpoint at 'http://<pcname>/service.svc' does not have a Binding with the None MessageVersion. 'System.ServiceModel.Description.WebHttpBehavior' is only intended for use with WebHttpBinding or similar bindings.

  <system.serviceModel>
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
    <bindings>
      <webHttpBinding>
        <binding name="webHttpBindingWithJsonP" crossDomainScriptAccessEnabled="true">
          <security mode="Transport"></security>
        </binding>
      </webHttpBinding>
      <wsHttpBinding>
        <binding name="wsHttpBinding" >
          <security mode="Transport">          
          </security>
        </binding>
      </wsHttpBinding>
    </bindings>
    <client />
    <services>
      <service name="RestService.service">

        <endpoint behaviorConfiguration="webHttp" binding="webHttpBinding" contract="RestService.Iservice" />

        <endpoint behaviorConfiguration="webHttp" binding="wsHttpBinding" contract="RestService.Iservice" />

        <!--
        <endpoint address="/service.svc" binding="webHttpBinding" bindingConfiguration="webHttpBindingWithJsonP" contract="RestService.Iservice" />
-->

        <!--
        <endpoint behaviorConfiguration="webHttp" binding="webHttpBinding" contract="RestService.Iservice" />
        <endpoint address="/service.svc" binding="webHttpBinding" bindingConfiguration="webHttpBindingWithJsonP" contract="RestService.Iservice" />
-->
      </service>
    </services>
    <behaviors>
      <serviceBehaviors>
        <behavior name="">
          <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" />
          <serviceDebug includeExceptionDetailInFaults="true" />
        </behavior>
      </serviceBehaviors>
      <endpointBehaviors>
        <behavior name="webHttp">
          <webHttp />
        </behavior>
        <behavior name="webHttpBehavior">
          <webHttp />
        </behavior>
      </endpointBehaviors>
    </behaviors>
  </system.serviceModel>
Community
  • 1
  • 1
Adam
  • 6,041
  • 36
  • 120
  • 208
  • You might need to change binding to webHttpsBinding for communication over https channel. – Jenish Rabadiya Oct 27 '14 at 04:53
  • But then all my services won't be available over http right? I want the services to be available on both http AND https. – Adam Oct 27 '14 at 18:58
  • This probably doesn't help you immediately but I guarantee you the answer is in http://www.amazon.com/Programming-WCF-Services-Mastering-AppFabric/dp/0596805489 – Chris Marisic Oct 27 '14 at 20:42
  • @Flo If you want then you can always keep old endpoint as it is and add new one with webHttpsBinding for https. look at link http://stackoverflow.com/questions/26248759/soap-and-rest-on-same-service-returns-status-404-endpoint-not-found-for-soap-end – Jenish Rabadiya Oct 28 '14 at 05:50
  • @JenishRabadiya I tried adding `` to my `bindings` node, but it's unrecognized in my web.config. Could you give an example of what and where to add this? – Adam Oct 28 '14 at 14:30
  • @Flo I have provided link in above comment that question contains the example of service which communicates on two different endpoint (communication medium) one is SOAP and another is REST. link : http://stackoverflow.com/questions/26248759/soap-and-rest-on-same-service-returns-status-404-endpoint-not-found-for-soap-end – Jenish Rabadiya Oct 29 '14 at 05:05
  • You may want to check a few things: ensure that the port is open using `netstat`; ensure the certificate has been bound to your service `netsh http show sslcert`. Also, the first few lines of the trace file, after a fresh service start, should indicate which endpoints are established – Seymour Oct 29 '14 at 15:55
  • @JenishRabadiya: I did look at that link, but I don't see how to add https endpoint there. What to provide under `address` property of my service? (I updated my post) @Seymour: but I can already approach my www site over https so port should be open right? I checked the traced log file and it listens on 'http:///service.svc' – Adam Oct 29 '14 at 19:30
  • @Flo, have you checked if there is port forwarding enabled, i.e. redirect 443 port to 80 port at firewall level - https://social.msdn.microsoft.com/Forums/vstudio/en-US/bec3ab7a-310e-415f-b538-6d5681e5e53c/there-was-no-endpoint-listening-at – Arindam Nayak Oct 31 '14 at 17:34
  • @ArindamNayak: If that were the case I think I should also be unable to navigate to https://www.example.com right? But that page loads correctly. If you think the firewall could still be an issue, which rule in the Firewall should I remove? – Adam Oct 31 '14 at 18:19
  • @Flo, i was saying if that is true , it will make you redirect from HTTPS to HTTP, and WCF is very sensitive to this, even though `.svc` works in both, actual method execution will not working in `http`-port 80, if you have configured for `https`. I am not sure which tool i need to suggest to check port forwarding, however, i am searching that. – Arindam Nayak Oct 31 '14 at 18:24
  • @Flo , i am finally able to crack this out, please take a look at my answer. – Arindam Nayak Nov 02 '14 at 06:32

4 Answers4

19

These kind of web services can be super sensitive to whether you're using HTTP or HTTPS to access them.

Try using this to enable SSL for WCF services in the web.config:

<system.serviceModel>
    <bindings>
        <webHttpBinding>
            <binding>
                <security mode="Transport" />

I just had a similar problem, see my answer to this question for more info: Moved my ASP.NET website to IIS 8 on windows server 2012... services missing: .svc files are viewable, but their methods give a 404

Community
  • 1
  • 1
MGOwen
  • 6,562
  • 13
  • 58
  • 67
  • Sorry, that was not updated in my post yet, but I already had the security mode enabled. See updated post. – Adam Oct 27 '14 at 19:00
  • 1
    Thank you, came across this post, and it solved my problem :). – Fred Oct 05 '15 at 09:44
  • 2
    @MGOwen OP helped me with the WSDL not showing as https, but you solved my issue of methods throwing 404. Thank you!! – EpicJoker May 13 '16 at 07:52
  • 1
    Thank you @MGOwen, not exacally the same issue as OP but solved mine: http://serverfault.com/questions/776390/iis-7-wcf-webservices-giving-404-error-over-https – Morvael May 13 '16 at 09:31
16

@Flo, Finally I am able to make it work. I have updated <endpoint behaviorConfiguration .. and set <service behaviorConfiguration=.., and it worked, i mean when you hit both http and https version of www.example.com/service.svc/newprofile/?id=8&ipaddress=124.162.13.109, it will get you correct output. Following is the system.serviceModel part of web.config. Please try this, let me know, if you are still not able to make it work.

<system.serviceModel>
  <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
  <bindings>
    <webHttpBinding>
      <binding name="Binding" crossDomainScriptAccessEnabled="true">
        <security mode="Transport">
          <transport clientCredentialType="None" />
        </security>
      </binding>
      <binding name="httpbind" crossDomainScriptAccessEnabled="true">
      </binding>
    </webHttpBinding>
  </bindings>
  <client />
  <services>
    <service name="RestService.service"  behaviorConfiguration="ServiceBehaviour">
      <endpoint address="" binding="webHttpBinding" bindingConfiguration="Binding" contract="RestService.Iservice" behaviorConfiguration="web">
      </endpoint>
      <endpoint address="" binding="webHttpBinding" bindingConfiguration="httpbind" contract="RestService.Iservice" behaviorConfiguration="web">
      </endpoint>
    </service>
  </services>
  <behaviors>
    <serviceBehaviors>
      <behavior name="ServiceBehaviour">
        <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" />
        <serviceDebug includeExceptionDetailInFaults="true" />
      </behavior>
      <behavior name="web">
        <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" />
        <serviceDebug includeExceptionDetailInFaults="true" />
      </behavior>
    </serviceBehaviors>
    <endpointBehaviors>
      <behavior name="web">
        <webHttp helpEnabled="true" />
      </behavior>
    </endpointBehaviors>
  </behaviors>
</system.serviceModel>
Arindam Nayak
  • 7,346
  • 4
  • 32
  • 48
  • One more question: it now seems that when I'm logged into my site I can't call these services anymore. I'm getting error: `Cross domain javascript callback is not supported in authenticated services.`. Any idea what that could be? Please note: I MUST have these services available cross-domain. – Adam Nov 04 '14 at 23:53
  • @Flo, I have answered this type of question many time, please find one of them here http://stackoverflow.com/questions/25889599/wcf-rest-service-template-40cs-cross-domain-error – Arindam Nayak Nov 05 '14 at 02:16
  • Ok thanks again, I'll have a look at it. But before I start implementing everything could you tell if your solution supports the following: 1. access my webservices over both http and https? 2. call my webservices cross domain? 3. call my webservices cross domain even when authenticated (via Forms Authentication)? Thanks! – Adam Nov 05 '14 at 19:16
  • 1
    @Flo, 1. Supporting http, https is just config based, so that will definitely work. 2. To handle POST request you have to follow the link which I had given, not sure why GET request did not work there. 3. I don't think it would be issue with CORS. – Arindam Nayak Nov 06 '14 at 02:06
  • @ArindamNayak Well played sir. This worked for me seamlessly. – EpicJoker May 13 '16 at 07:50
  • I think there is something wrong here even if it works: The configuration for service name="RestService.service" has two endpoints that have the same binding and same address (and just different binding configuration...) How will this work? How will the WCF runtime know when a request comes to that address via that binding which config to apply? – Lzh Jan 22 '17 at 02:26
0

After a lot of test and tries finally i made it. My configuration is below.

<?xml version="1.0"?>
<configuration>
  <configSections>
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false"/>
  </configSections>
  <appSettings>
    <add key="aspnet:UseTaskFriendlySynchronizationContext" value="true"/>
  </appSettings>
  <system.web>
    <compilation targetFramework="4.5.2" debug="true"/>
    <httpRuntime targetFramework="4.5.2"/>
  </system.web>
    <system.serviceModel>
  <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
  <bindings>
    <webHttpBinding>
      <binding name="Binding" crossDomainScriptAccessEnabled="true">
        <security mode="Transport">
          <transport clientCredentialType="None" />
        </security>
      </binding>
    </webHttpBinding>
  </bindings>
  <client />
  <services>
    <service name="yourservicename"  behaviorConfiguration="ServiceBehaviour">
      <endpoint address="" binding="webHttpBinding" bindingConfiguration="Binding" contract="yourserviceIname" behaviorConfiguration="web">
      </endpoint>
    </service>
  </services>
  <behaviors>
    <serviceBehaviors>
      <behavior name="ServiceBehaviour">
        <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" />
        <serviceDebug includeExceptionDetailInFaults="true" />
      </behavior>
    </serviceBehaviors>
    <endpointBehaviors>
      <behavior name="web">
        <webHttp/>
      </behavior>
    </endpointBehaviors>
  </behaviors>
</system.serviceModel>  
  <system.webServer>
    <modules runAllManagedModulesForAllRequests="true"/>
    <directoryBrowse enabled="true"/>
    <security>
      <requestFiltering>
        <requestLimits maxAllowedContentLength="104857600"/>
      </requestFiltering>
    </security>
    <handlers>
      <add name=".svc" verb="*" path="*.svc" type="System.ServiceModel.Activation.ServiceHttpHandlerFactory, System.ServiceModel.Activation, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
    </handlers>
  </system.webServer>
  <connectionStrings>
    <add name="SqlServerContext" providerName="System.Data.SqlClient" connectionString="Server=VMA10363C\SQLEXPRESS;Database=Inmobiliaria;Trusted_Connection=True;"/>
  </connectionStrings>
  <entityFramework>
    <providers>
      <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer"/>
    </providers>
  </entityFramework>
</configuration>

In my case I ran my wcf on port 8052 without any problem. Thnks a lot and if you have any question im here!

  • Thank you for contributing to the Stack Overflow community. This may be a correct answer, but it’d be really useful to provide additional explanation of your code so developers can understand your reasoning. This is especially useful for new developers who aren’t as familiar with the syntax or struggling to understand the concepts. **Would you kindly [edit] your answer to include additional details for the benefit of the community?** – Jeremy Caney May 26 '23 at 00:59
0

I have solved this issue by adding one attribute in web.config ( multipleSiteBindingsEnabled="true")

Nebal
  • 1
  • Your answer could be improved with additional supporting information. Please [edit] to add further details, such as citations or documentation, so that others can confirm that your answer is correct. You can find more information on how to write good answers [in the help center](/help/how-to-answer). – Community Aug 27 '23 at 18:05