У меня есть служба WCF, размещенная в IIS (7.0), которая реализует несколько контрактов на обслуживание и поэтому определяет несколько конечных точек (по одному для каждого контракта). Он работает нормально, но я только что добавил привязку https к веб-приложению IIS, и теперь у меня возникает исключение активации, указывающее, что служба реализует несколько контрактов, но конечные точки не определены в конфигурации, когда они на самом деле. Я нашел статью this, которая решает подобную проблему, вызванную добавлением имен узлов в IIS, но, похоже, это не помогает моей ситуации.Restful WCF (webhttpbinding) в IIS прерывается после добавления привязки https
Вот отрывок из моей конфигурации, которая имеет отношение:
<serviceHostingEnvironment aspNetCompatibilityEnabled="true">
<baseAddressPrefixFilters>
<add prefix="http://localhost/CDC.WebPortal.MidTierAccessService/"/>
</baseAddressPrefixFilters>
</serviceHostingEnvironment>
<services>
<service name="CDC.WebPortal.MidTier.MidTierAccessService"
behaviorConfiguration="MidTierServiceBehaviour" >
<endpoint address="http://localhost/CDC.WebPortal.MidTierAccessService/MidTierAccessService.svc"
binding="webHttpBinding" bindingName="RestBindingConfiguration"
contract="CDC.WebPortal.ServiceContract.IProductService"/>
<endpoint address="http://localhost/CDC.WebPortal.MidTierAccessService/MidTierAccessService.svc/Category" binding="webHttpBinding"
bindingName="RestBindingConfiguration"
contract="CDC.WebPortal.ServiceContract.ICategoryService"/>
<endpoint address="http://localhost/CDC.WebPortal.MidTierAccessService/MidTierAccessService.svc/Account" binding="webHttpBinding"
bindingName="RestBindingConfiguration"
contract="CDC.WebPortal.ServiceContract.IAccountService"/>
<endpoint address="http://localhost/CDC.WebPortal.MidTierAccessService/MidTierAccessService.svc/Order"
binding="webHttpBinding" bindingName="RestBindingConfiguration"
contract="CDC.WebPortal.ServiceContract.IOrderService"/>
<endpoint address="http://localhost/CDC.WebPortal.MidTierAccessService/MidTierAccessService.svc/mex"
binding="mexHttpBinding" contract="IMetadataExchange" />
</service>
</services>
Любые предложения приветствуются.
Я на самом деле не используя протокол HTTPS для службы, я добавил привязка https к веб-приложению iis для другого сайта, который он запускает. Я понимаю, что могу просто создать другое веб-приложение без привязки https для использования в службе, однако я хочу знать, почему эта проблема возникла в любом случае, и если она может быть исправлена. –