How to configure WCF services to work through HTTPS without HTTP binding?
you need to use mexHTTPSBinding unstead of mexHTTPBinding
<endpoint address="mex" binding="mexHttpsBinding" contract="IMetadataExchange" />
Modify your configuration this way:
<behaviors>
<serviceBehaviors>
<behavior> <!-- behavior can have name (must have name in WCF 3.x) -->
<serviceMetadata httpGetEnabled="false" httpsGetEnabled="true" />
</behavior>
</serviceBehaviors>
</behaviors>