Ошибка WCF | IIS 7.5 | 500.24 - PullRequest
       50

Ошибка WCF | IIS 7.5 | 500.24

1 голос
/ 28 апреля 2011

На моем компьютере запущена служба WCF, которая запускается, когда я запускаю Visual Studio 2008 в режиме отладки. Все работало нормально, пока я не попытался добавить новый веб-сайт в IIS 7.5. Теперь, когда я запускаю свой клиент в режиме отладки ... Я получаю следующую ошибку.

The content type text/html; charset=utf-8 of the response message does not match the content type of the binding (text/xml; charset=utf-8). If using a custom encoder, be sure that the IsContentTypeSupported method is implemented properly. The first 1024 bytes of the response were: '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<title>IIS 7.5 Detailed Error - 500.24 - Internal Server Error</title> 
<style type="text/css"> 
<!-- 
body{margin:0;font-size:.7em;font-family:Verdana,Arial,Helvetica,sans-serif;background:#CBE1EF;} 
code{margin:0;color:#006600;font-size:1.1em;font-weight:bold;} 
.config_source code{font-size:.8em;color:#000000;} 
pre{margin:0;font-size:1.4em;word-wrap:break-word;} 
ul,ol{margin:10px 0 10px 40px;} 
ul.first,ol.first{margin-top:5px;} 
fieldset{padding:0 15px 10px 15px;} 
.summary-container fieldset{padding-bottom:5px;margin-top:4px;} 
legend.no-expand-all{padding:2px 15px 4px 10px;margin:0 0 0 -12px;} 
legend{color:#333333;padding:4px 15px 4px 10px;margin:4px 0 8px -12px;_margin-top:0px; 
 border-top:1px solid #EDEDED;border-left:1px solid #EDEDED;border-right:1px solid #969696; 
 border-bottom:1px solid #969696;background:#E7ECF0;font-weight:bold;'.

Я не уверен, что вызывает это, не могли бы вы помочь мне?

Ниже приведена конфигурация IIS 7.5. Анонимная аутентификация = включена Олицетворение ASP.NET: включено Базовая аутентификация: включена Аутентификация с помощью форм: включена Аутентификация Windows: включена

Я ссылаюсь на мой веб-сервис из моего конфигурационного файла клиента следующим образом ... http://localhost:2336/Service.svc

Обратите внимание, что этот сервис является частью моего проекта и явно не добавляется в IIS. Он запускается автоматически, когда мой клиент работает в режиме отладки, а внутри файла web.config аутентификация установлена ​​как

 <authentication mode="None"/>

Также я подозреваю, что это произошло после того, как я установил Skype, будет ли это как-то связано с этим?

* +1015 * Спасибо, -Mike

Ответы [ 2 ]

3 голосов
/ 06 мая 2011

У меня только что была ошибка, связанная с этим на работе (буквально получал тот же вывод). Проблема заключалась в том, что олицетворение было включено во время работы приложения в интегрированном режиме. Чтобы исправить это, я добавил следующее в web.config для сервиса:

<configuration>
  <system.webServer>
    <validation validateIntegratedModeConfiguration="false" />
  </system.webServer>
</configuration>

Это позволит обойти проверку встроенного режима, которая проверяет разделы « и , а также олицетворение» source

Больше информации, которая помогла мне

0 голосов
/ 26 июня 2012

Пожалуйста, выполните следующие шаги:

  1. Во-первых, убедитесь, что WCF правильно зарегистрирован в IIS и ASP.NET (точная версия).Подробнее о том, как зарегистрировать WCF в IIS и ASP.NET .

  2. Во-вторых, откройте IIS и перейдите в раздел «Дополнительные настройки» своего веб-сайта / виртуального каталога.Во всплывающем окне «Дополнительные настройки» измените «Пул приложений» на «Классический .NET AppPool» и нажмите «ОК».

Важно помнить, что пул приложений, используемый нашим приложениемдолжно иметь две важные настройки.a) Режим управляемого конвейера в AppPool должен быть установлен на «Классический» вместо «Интегрированный».б) .NET Framework Версия AppPool должна быть такой же, какой мы использовали для службы WCF.

Имея эти две настройки, мы можем создавать и использовать новый AppPool для нашего приложения, и нам не нужно быть конкретнымв «Классический .NET AppPool».

...