我已经设置了一个托管两个端点(一个 HTTP 和另一个 HTTPS)的 Web 角色。两个端点都指向Main.svc
配置为 RESTful 的同一个服务。这是我的配置(仅显示 HTTPS 配置,因为它是给我带来问题的配置):
<services>
<service behaviorConfiguration="AthenaBehaviorConfigHttps" name="Athena.LEC.Service.Main">
<endpoint address="" behaviorConfiguration="AthenaBehaviorEndpointConfig"
binding="webHttpBinding" contract="Athena.LEC.Service.IMain" />
<endpoint binding="basicHttpBinding" bindingConfiguration="SecureBasic" name="basicHttpSecure" contract="Athena.LEC.Service.IMain" />
</service>
</services>
行为配置:
<behavior name="AthenaBehaviorConfigHttps">
<serviceMetadata httpsGetEnabled="true" httpsGetUrl="" httpGetEnabled="true" httpGetUrl="" />
<serviceDebug includeExceptionDetailInFaults="false" />
</behavior>
基本的http绑定:
<basicHttpBinding>
<binding name="SecureBasic">
<security mode="Transport" />
</binding>
</basicHttpBinding>
在 Azure Web 角色配置上:
<Sites>
<Site name="Web">
<Bindings>
<Binding name="Endpoint1" endpointName="HttpEndpoint" />
<Binding name="Endpoint2" endpointName="HttpsEndpoint" />
</Bindings>
</Site>
</Sites>
<Endpoints>
<InputEndpoint name="HttpEndpoint" protocol="http" port="7902" />
<InputEndpoint name="HttpsEndpoint" protocol="https" port="7955" />
</Endpoints>
在 HTTP 上,我已经验证了 restful 调用是成功的。但是,在端口 7955(配置为 Https)上,当我使用浏览器进行调用时,它只会导致一个空页面(通常会返回 JSON 结果)。这是正常的吗?还是我配置错误?谢谢!