#silverlight #wcf #iis-7 #asp.net-membership
#silverlight #wcf #iis-7 #asp.net-членство
Вопрос:
У меня есть навигационное приложение SL, которое в настоящее время работает в пакете общего хостинга с сторонним провайдером. Я могу войти в систему и зарегистрироваться с помощью ASP.NET поставщики членства и ролей.
Теперь я настроил выделенный сервер, на котором будет работать только мое приложение. У него еще нет доменного имени, которое указывает на него… Я получаю к нему доступ через IP-адрес.
Я скопировал весь сайт (включая ClientBin и все XAP) на новый сервер, но службы аутентификации и регистрации не работают … они просто возвращают NotFound .
Когда я проверяю Fiddler на рабочем сайте, вызывается эта служба :
www.myaddress.com/ClientBin/MyApp-Web-AuthenticationService.svc/binary/Login
что, конечно, успешно. Однако на другом сайте трассировка скрипача выглядит так же (потому что я только что скопировал сайт) :
123.123.123.123/ClientBin/MyApp-Web-AuthenticationService.svc/binary/Login
но вызов завершается с ошибкой NotFound. Fiddler сообщает об этом как об ошибке внутреннего сервера HTTP / 1.1 500. Когда я открываю
http://localhost/ClientBin/MyApp-Web-AuthenticationService.svc/binary/Login
на сервере я получаю HTTP / 1.1 500, а также это описание :
Handler "svc-Integrated" has a bad module "ManagedPipelineHandler" in its module list
Это наводит меня на мысль, что с моей конфигурацией IIS что-то не так, поскольку точно такой же код работает в другой системе.
Что такое «плохой модуль»? Как мне это исправить?
Ответ №1:
Обычно этот тип ошибки заключается в том, что ASP.Net не активирован или что обработчик для svc не зарегистрирован или зарегистрирован неправильно.
В вашем случае это выглядит немного по-другому. Возможно, у вас есть код .net framework 4.0, который вы пытаетесь запустить в пуле приложений .net framework 2.0.
Комментарии:
1. Приложение запускается в DefaultAppPool, который я изменил на .NET 4.0. Я также попытался создать другой пул приложений и установить для него значение .NET 4.0. Та же ошибка.
2. Хотя почти получилось… Необходимо запустить asp_regiis.exe /я из %WINDIR%Microsoft.NetFrameworkv4.
Ответ №2:
Ошибки IIS 500 часто отображаются с дополнительной информацией в журнале событий Windows — если вы можете каким-то образом получить к этому доступ?
Также я заметил, что часто сервер фактически отправляет отладочный вывод обратно клиенту, который, похоже, все игнорирует. Вы проверили весь необработанный ответ, который возвращается с сервера, чтобы посмотреть, есть ли там какие-либо подсказки?