Это сводит всю команду с ума. Должна быть какая-то простая неправильно настроенная часть IIS или нашего веб-сервера, но каждый раз, когда мы пытаемся запустить веб-приложение ASP.NET на IIS 7.5, мы получаем следующую ошибку ...
Вот ошибка в полном объеме:
HTTP Error 500.19 - Internal Server Error
The requested page cannot be accessed because the related configuration
data for the page is invalid.
`Detailed Error Information`
Module IIS Web Core
Notification Unknown
Handler Not yet determined
Error Code 0x8007000d
Config Error
Config File \\?\E:\wwwroot\web.config
Requested URL http://localhost:80/Default.aspx
Physical Path
Logon Method Not yet determined
Logon User Not yet determined
Config Source
-1:
0:
Машина работает под управлением Windows Server 2008 R2 . Мы разрабатываем наше веб-приложение с использованием Visual Studio 2008 .
Согласно Microsoft, код 8007000d означает, что в нашем файле web.config есть синтаксическая ошибка - за исключением того, что проект собирается и работает нормально локально. Просмотр web.config в XML Notepad также не вызывает никаких синтаксических ошибок. Я предполагаю, что это, должно быть, какая-то плохая конфигурация с моей стороны ...?
Кто-нибудь знает, где я могу найти дополнительную информацию об ошибке? Ничего не отображается в EventViewer, либо :(
Не уверен, что еще было бы полезно упомянуть ...
Помощь очень ценится. Спасибо!
ОБНОВЛЕНИЕ! - РАЗМЕЩЕННЫЙ ВЕБ-КОНФИГ НИЖЕ
Хорошо, так как я разместил оригинальный вопрос выше, я отследил точные строки в web.config , которые вызывали ошибку.
Вот строки (они появляются между <System.webServer>
тегами) ...
<httpHandlers>
<remove verb="*" path="*.asmx"/>
<add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
</httpHandlers>
Примечание: Если удалить линии между с <httpHandlers>
я все еще получаю ошибку. Я буквально должен удалить <httpHandlers>
(и строки между ними), чтобы перестать получать вышеуказанную ошибку.
Однако, как только я это сделаю, я получаю новую ошибку 500.19. К счастью, на этот раз IIS фактически сообщает мне, какой бит web.config вызывает проблему ...
<handlers>
<remove name="WebServiceHandlerFactory-Integrated"/>
<add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory,System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
<add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
<add name="ScriptResource" preCondition="integratedMode" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
</handlers>
Глядя на эти строки, становится ясно, что проблема переместилась дальше в том же <system.webServer>
теге к <handlers>
тегу.
Новая ошибка также более явная и, в частности, жалуется на то, что она не распознает атрибут «validate» (как видно в третьей строке выше). Удаление этого атрибута заставляет жаловаться, что в той же строке нет обязательного атрибута «имя». Добавление этого атрибута вызывает ошибку ASP.NET ...
Не удалось загрузить файл или сборку 'System.web.Extensions, версия = 1.0.61025.0, культура = нейтральная, PublicKeyToken = f2cb5667dc123a56' или одна из ее зависимостей. Система не может найти указанный файл.
Очевидно, я думаю, что эти новые ошибки возникли из-за того, что я <httpHandlers>
сначала удалил теги - они, очевидно, нужны приложению - поэтому остается вопрос: почему эти теги в первую очередь приводят к ошибке в IIS? ??
Нужно ли что-то устанавливать в IIS, чтобы он работал с ними?
Еще раз спасибо за любую помощь.
Web.config
Вот неприятные моменты нашей сети. Конфигурация ... Я надеюсь, что это поможет кому-то найти нашу проблему!
<system.Web>
<!-- stuff cut out -->
<httpHandlers>
<remove verb="*" path="*.asmx"/>
<add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
<add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
<add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56" validate="false"/>
</httpHandlers>
<httpModules>
<add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
</httpModules>
</system.web>
<system.webServer>
<validation validateIntegratedModeConfiguration="false"/>
<modules>
<add name="ScriptModule" preCondition="integratedMode" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
</modules>
<remove verb="*" path="*.asmx"/>
<add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
<handlers>
<remove name="WebServiceHandlerFactory-Integrated"/>
<add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory,System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
<add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
<add name="ScriptResource" preCondition="integratedMode" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
</handlers>
</system.webServer>
web.config
. Они начинаются с<!--
и заканчиваются-->
.