title: Unable to expose WCF Endpoint at address
body: <p><strong>Problem</strong></p>
  
  <p>I have been unable to expose a WCF Service via an end point specified address. </p>
  
  <p>Example my end point address is: <code>http://localhost:36793/services/main</code></p>
  
  <p>When I host the WCF Service with Visual Studio and try to access the address I get a http 404 Error (Not Found).</p>
  
  <p>What I would expect is to be able to view the WSDL of the address by applying the ?wsdl to the end of the address.</p>
  
  <p>The second strange thing is that I am able to get access to the address by specifying the SVC in the address. </p>
  
  <p>Example: <code>http://localhost:36793/ServiceManager.svc?wsdl</code></p>
  
  <p><strong>Environment</strong></p>
  
  <ul>
  <li>Windows 8.1</li>
  <li>Visual Studio 2013 Update 1</li>
  <li>IIS Express to host the Web Service via Visual Studio</li>
  </ul>
  
  <p><strong>Thoughts</strong></p>
  
  <p>Something tells me this is either a configuration issue with the web service or something not quite configured in IIS. </p>
  
  <p>Any help would be much appreciated, I have spent a considerable amount of time trying to figure this out. See below for my Web Config.</p>
  
  <pre><code>&lt;?xml version="1.0"?&gt;
  &lt;configuration&gt;
  
    &lt;appSettings&gt;
      &lt;add key="aspnet:UseTaskFriendlySynchronizationContext" value="true" /&gt;
    &lt;/appSettings&gt;
   &lt;system.web&gt;
      &lt;compilation debug="true" targetFramework="4.5" /&gt;
      &lt;httpRuntime targetFramework="4.5"/&gt;
    &lt;/system.web&gt;
    &lt;system.serviceModel&gt;
      &lt;client /&gt;
      &lt;services&gt;
    &lt;service behaviorConfiguration="MexTypeBehaviour" name="Server.ServiceManager"&gt;
      &lt;clear /&gt;
      &lt;endpoint address="Main" binding="basicHttpBinding" name="Main" contract="Server.IServiceManager" /&gt;
      &lt;endpoint address="Mex" binding="mexHttpBinding" name="Mex" contract="Server.IServiceManager" /&gt;
      &lt;host&gt;
        &lt;baseAddresses&gt;
          &lt;add baseAddress="http://localhost:36793/services" /&gt;
        &lt;/baseAddresses&gt;
      &lt;/host&gt;
    &lt;/service&gt;
  &lt;/services&gt;
  &lt;behaviors&gt;
     &lt;serviceBehaviors&gt;
      &lt;behavior name="MexTypeBehaviour" &gt;
          &lt;serviceMetadata httpGetEnabled="true" /&gt;
      &lt;/behavior&gt;
  &lt;/serviceBehaviors&gt;
  &lt;/behaviors&gt;
  &lt;protocolMapping&gt;
      &lt;add binding="basicHttpsBinding" scheme="https" /&gt;
  &lt;/protocolMapping&gt;    
  &lt;serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true"     /&gt;
    &lt;/system.serviceModel&gt;
    &lt;system.webServer&gt;
      &lt;modules runAllManagedModulesForAllRequests="true"/&gt;
      &lt;!--
           To browse web app root directory during debugging, set the value below to true.
           Set to false before deployment to avoid disclosing web app folder information.
       --&gt;
      &lt;directoryBrowse enabled="true"/&gt;
    &lt;/system.webServer&gt;
  
  &lt;/configuration&gt;
  </code></pre>