Ошибка 404 на IIS6 при использовании служб WCF RIA и SL4 - PullRequest
2 голосов
/ 14 апреля 2011

Я размещаю приложение SL4, используя службы WCF RIA на IIS6, и использую проверку подлинности Windows.Журнал выглядит примерно так:

/.../ClientBin/NameOfWebApp-AuthenticationDomainService.svc/binary/GetUser ... 404 0 2

Ранее успешно установив это приложение на другом сервере 2003, у меня был опыт настройки .NET Framework 4. Я имею в виду, что использовал «aspnet_regiis», «servicemodelreg», «httpcfg "и т. д. Впоследствии я даже создал новый веб-сайт, чтобы убедиться, что все в порядке.Фактически, когда я пытаюсь получить доступ к своей действующей доменной службе через веб-браузер, все работает.Поэтому я считаю, что WCF настроен правильно.Я проверил:

  • Разрешены расширения веб-служб для .net framework v4 * Расширение
  • .svc настроено для v4 aspnet_isapi.dll
  • анонимный доступ отключен, тольковстроенная проверка подлинности Windows включена, поскольку допускается не более одной схемы проверки подлинности.

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

У вас есть какие-нибудь идеи?

Дополнительная информация:

Я полагаю, поскольку WCF работает в целом, существует проблема с хостом службы домена, который обрабатывает вызовы службы без файлов SVC.У меня уже есть следующие настройки в моем web.config:

   <system.web>
     <httpModules>
       <add name="DomainServiceModule" type="System.ServiceModel.DomainServices.Hosting.DomainServiceHttpModule, System.ServiceModel.DomainServices.Hosting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
     </httpModules>
   </system.web>
   <system.webServer>
     <modules runAllManagedModulesForAllRequests="true">
       <add name="DomainServiceModule"
             preCondition="managedHandler"
             type="System.ServiceModel.DomainServices.Hosting.DomainServiceHttpModule, 
             System.ServiceModel.DomainServices.Hosting, Version=4.0.0.0, 
             Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
     </modules>
   </system.webServer>

Кто-нибудь решил эту проблему с IIS6?

1 Ответ

2 голосов
/ 15 апреля 2011

Мне суждено ответить на мои собственные вопросы.Недостаточно установить расширение .svc для использования aspnet_isapi.dll, Убедитесь, что файл существует Настройка не должна проверяться.Для этого предназначен DomainServiceModule.

...