Причина ошибки 500!
Привет всем,
Я тоже хочу опубликовать собственное исследование, надеюсь, оно поможет будущим энтузиастам.Как предлагается в ответах, я не могу удалить WebDav, поэтому я добавил строку ниже в веб-конфигурации (из других ответов)
<system.webServer>
<handlers>
<remove name="ExtensionlessUrlHandler-Integrated-4.0" />
<add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE" type="System.Web.Handlers.TransferRequestHandler" resourceType="Unspecified" requireAccess="Script" preCondition="integratedMode,runtimeVersionv4.0" />
</handlers>
</system.webServer>
, но я получил ошибку 500, когда я включил режим отладки, нашел это
Cannot add duplicate collection entry of type 'add' with unique key attribute 'name' set to 'ExtensionlessUrlHandler-Integrated-4.0'
Ответ
Это потому, что уже существовал ExtensionlessUrlHandler в разделе отображений обработчика, для устранения проблемы выполните следующие действия.
Метод 1
1) Перейдите в диспетчер IIS и выберите приложение
2) Перейдите к функции сопоставления обработчиков
3) Найдите ExtensionlessUrlHandler-Integrated-4.0 и удалите его.
4) Добавьте ExtensionlessUrlHandler в свою веб-конфигурацию (как упоминалось в ответах выше)
<system.webServer>
<handlers>
<remove name="ExtensionlessUrlHandler-Integrated-4.0" />
<add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE" type="System.Web.Handlers.TransferRequestHandler" resourceType="Unspecified" requireAccess="Script" preCondition="integratedMode,runtimeVersionv4.0" />
</handlers>
Метод 2
1) Удалите обработчик ExtensionlessUrl из веб-конфигурации
2) Нажмите свое приложение на IIS Server, перейдите к HandlerMappings
3) Найдите ExtensionlessUrlHandler-Integrated-4.0 (только это имяигнорируйте других)
4) щелкните правой кнопкой мышиd выберите Редактировать
Редактировать обработчик
5) Нажмите «Запретить ограничения» и выберите вкладку «Глаголы» и выберите «Все глаголы
», это активирует обработчик без расширенийразрешить все глаголы.
Я пойду с методом 1, так как мы можем иметь контроль в web.config.Но обязательно проверьте сервер развертывания на наличие дубликатов определений обработчиков.