2016-02-03 2 views
10

Я пытаюсь заставить приложение разработчика работать на моей машине. Решение построено на VS 2015 с использованием Web API, и я запускаю его с использованием 64-битного IIS Express. Каждый запрос возвращает 500.0 ошибок. Журнал трассировки Запрос говорит, что это о нем:ExtensionlessUrlHandler и «Рекурсия слишком глубокая, стек переполнен»

1517. -MODULE_SET_RESPONSE_ERROR_STATUS 
ModuleName ManagedPipelineHandler 
Notification EXECUTE_REQUEST_HANDLER 
HttpStatus 500 
HttpReason Internal Server Error 
HttpSubStatus 0 
ErrorCode  Recursion too deep; the stack overflowed. (0x800703e9) 
ConfigExceptionInfo 

Соответствующий раздел конфигурации выглядит следующим образом:

<system.webServer> 
<handlers> 
    <remove name="OPTIONS" /> 
    <remove name="OPTIONSVerbHandler" /> 
    <remove name="TRACEVerbHandler" /> 
    <remove name="ExtensionlessUrlHandler-Integrated-4.0" /> 
    <remove name="ExtensionlessUrlHandler-ISAPI-4.0_32bit" /> 
    <remove name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" /> 
    <add name="ExtensionlessUrlHandler-ISAPI-4.0_32bit" path="*" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" /> 
    <add name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" path="*" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" /> 
    <add name="ExtensionlessUrlHandler-Integrated-4.0" path="*" verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" /> 
</handlers> 
</system.webServer> 

Другие, возможно, соответствующие факты:

  • Машина не была использована для веб-сайтов хостинг, но я занимался разработкой VS2013 и на прошлой неделе установил только 2015, чтобы запустить этот проект.
  • Проект содержит некоторые функции C# 6.0, а именно новые свойства интерполяции строк.

Как бы я даже начал отлаживать это? Я получаю нулевые релевантные обращения в Google.

+0

Я тоже сталкиваюсь с этой проблемой. Вы нашли решение еще? –

+0

В настоящее время я испытываю это только по одному конкретному маршруту. Другие маршруты работают нормально. –

+0

Я также это вижу. Приветствуются любые комментарии. – Tom

ответ

0

Изменить путь = "*" на путь = "*." в каждом из перечисленных вами обработчиков.

<add name="ExtensionlessUrlHandler-ISAPI-4.0_32bit" path="*." verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" /> 
<add name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" path="*." verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" /> 
<add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" /> 

Я считаю, что есть способ использовать путь = «», но я не понял, что это такое. Я просто столкнулся с этим вопросом, потому что я пытался использовать path = "", и именно тогда была выбрана ошибка «рекурсия слишком глубокая ...».

Смежные вопросы