Исключение: не удалось найти базовый адрес, соответствующий схеме net.tcp

Я пытался перенастроить работающий сервис, чтобы добавить конечную точку netTcp.

Служба размещена на IIS 8.5

Я получил следующее исключение:

Не удалось найти базовый адрес, соответствующий схеме net.tcp для конечной точки с привязкой NetTcpBinding. Схемы зарегистрированных базовых адресов: [http, https]

Трассировки стека:

[InvalidOperationException: не удалось найти базовый адрес, который соответствует схеме net.tcp для конечной точки с привязкой NetTcpBinding. Схемы зарегистрированных базовых адресов: [http, https].]
System.ServiceModel.ServiceHostBase.MakeAbsoluteUri (UrilativeOrAbsoluteUri, привязка привязки, UriSchemeKeyedCollection baseAddresses) +16994291
System.ServiceModel.Description.ConfigLoader.LoadServiceDescription (хост ServiceHostBase, описание ServiceDescription, serviceElement serviceElement, Action`1 addBaseAddress, логический skipHost) +1092
System.ServiceModel.ServiceHostBase.LoadConfigurationSectionInternal (ConfigLoader configLoader, описание ServiceDescription, serviceSlection ServiceElement) +89
System.ServiceModel.ServiceHost.ApplyConfiguration () +162
System.ServiceModel.ServiceHostBase.InitializeDescription (UriSchemeKeyedCollection baseAddresses) +207 System.ServiceModel.ServiceHost..ctor (Тип serviceType, Uri [] baseAddresses) +474
System.ServiceModel.Activation.ServiceHostFactory.CreateServiceHost (Тип serviceType, Uri [] baseAddresses) +42
System.ServiceModel.Activation.ServiceHostFactory.CreateServiceHost (String constructorString, Uri [] baseAddresses) +569
System.ServiceModel.HostingManager.CreateService (String normalizedVirtualPath, EventTraceActivity eventTraceActivity) +1435
System.ServiceModel.HostingManager.ActivateService (ServiceActivationInfo serviceActivationInfo, EventTraceActivity eventTraceActivity) +76
System.ServiceModel.HostingManager.EnsureServiceAvailable (String normalizedVirtualPath, EventTraceActivity eventTraceActivity) +901

[ServiceActivationException: служба '/servicebus.svc' не может быть активирована из-за исключения во время компиляции. Сообщение об исключении: Не удалось найти базовый адрес, который соответствует схеме net.tcp для конечной точки с привязкой NetTcpBinding. Схемы зарегистрированных базовых адресов: [http, https]..]
System.Runtime.AsyncResult.End (результат IAsyncResult) +624522
System.ServiceModel.Activation.HostedHttpRequestAsyncResult.End (результат IAsyncResult) +196075
System.Web.AsyncEventExecutionStep.OnAsyncEventCompletion (IAsyncResult ar) +166

  <services>
  <service name="Niloosoft.ServiceBus" behaviorConfiguration="AuthenticationAndAuthorizationSecurity">
    <host>
      <baseAddresses>
        <add baseAddress="net.tcp://localhost:7213"/>
      </baseAddresses>
    </host>

    <endpoint
      address="secureBus"
      binding="basicHttpBinding"
      bindingConfiguration="TransportSecurity"
      contract="Niloosoft.IServiceBus" />
    <endpoint
      address="tcpBus"
      binding="netTcpBinding"
      bindingConfiguration="ServiceBusTcpBinding"
      contract="Niloosoft.IServiceBus" />
    <endpoint
     address="tcpMex"
     binding="mexTcpBinding"
     contract="IMetadataExchange" />
    <endpoint
      address="mex"
      binding="mexHttpsBinding"
      contract="IMetadataExchange" />
  </service>
</services>

Конфигурации привязки, кажется, работают хорошо для других служб, но я могу упустить что-то еще.

IIS имеет конфигурацию привязки для каждой службы, я добавил привязку tcp с адресом *:7213.

Какие-нибудь предложения, идеи относительно того, что я пропускаю? Я просмотрел много разных постов, чтобы узнать, не допустил ли я где-нибудь ошибку.

Вся помощь приветствуется.

1 ответ

Решение

Проблема заключалась в том, что для конфигурации HttpGetEnabled было задано значение true, необходимо установить значение false, если ваш веб-сервис должен принимать HTTPS.

Другие вопросы по тегам