#c# #wcf #iis #ssl
#c# #wcf #iis #ssl
Вопрос:
У меня есть веб-сервер HTTPS на WCF, размещенный под IIS 7.5. Я установил настройки SSL для требования SSL и игнорирования клиентских сертификатов.
Когда я пытаюсь добавить веб-ссылку в Visual Studio, я получаю следующую ошибку. Как мне решить эту проблему?
Я вижу, что он пытается запросить ?disco
, используя HTTP вместо HTTPS. Я думаю, что это проблема, но я не уверен, как ее решить.
Документ по URL https://testserver/service1.svc?wsdl не был распознан как известный тип документа.
Сообщение об ошибке от каждого известного типа может помочь вам устранить проблему:
— Отчет из «DISCO Document» — «Произошла ошибка загрузки»http://testserver/service1.svc?disco ‘.’.
— Ошибка запроса с HTTP-статусом 403: Запрещено.
— Отчет из «Документа WSDL» — «Формат документа не распознан (тип содержимого — «текст / html; кодировка = UTF-8″)».
— Отчет из «Схемы XML» — «Формат документа не распознан (тип содержимого — «текст / html;кодировка = UTF-8′).’.
— Отчет от ‘https://testserver/service1.svc?wsdl ‘ is ‘Формат документа не распознается (тип содержимого ‘text/html; кодировка =UTF-8′).’.
Комментарии:
1. Когда вы пытаетесь просмотреть URL-адрес в своем веб-браузере testserver/service1.svc?wsdl , что вы получаете?
2. Я не получаю никаких ошибок, когда попадаю на страницу. у меня есть сертификат, которому доверяют в моем корне
Ответ №1:
Поскольку вы можете получить WSDL через свой веб-браузер, возможная проблема может быть связана с размещением службы в IIS и настройкой привязок сайта. Некоторое время назад это была известная проблема на форумах, ознакомьтесь с этими ссылками:
Удачи!
Ответ №2:
Мне пришлось отключить Require SSL, чтобы заставить его работать. Я не уверен, почему disco переходит на HTTP, когда URL-адрес WSDL, который вы предоставляете, является HTTPS.
Комментарии:
1. Как отключить require ssl? В конфигурации, похоже, есть только httpsGetEnabled и httpGetEnabled.