I had a problem with a WCF service that was having problems on a secure page using SSL. The error said the endpoint could not be found. I found some resources on making a service HTTPS ready, but not for both. I finally figured it out that I need two endpoints pointing to the same service. One endpoing contained another property called "bindingConfiguration" that maps a binding that has a mode of transport which enables an endpoint for https. The bolded text below is what you need to enable a service for HTTPS.
<system.serviceModel>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true"/>
<behaviors>
<endpointBehaviors>
<behavior name="WebServicesBehavior">
<webHttp/>
</behavior>
</endpointBehaviors>
</behaviors>
<services>
<service name="WebService">
<endpoint binding="webHttpBinding" contract="IWebService" behaviorConfiguration="WebServicesBehavior"/>
<endpoint binding="webHttpBinding" bindingConfiguration="webBinding" contract="IWebService" behaviorConfiguration="WebServicesBehavior"/>
</service>
</services>
<bindings>
<webHttpBinding>
<binding name="webBinding">
<security mode="Transport">
<transport clientCredentialType="None"/>
</security>
</binding>
</webHttpBinding>
</bindings>
</system.serviceModel>