Я загрузил простой HTML-файл, и IIS 7 выдает ошибку 500. Сведения об ошибке почти не содержат информации.
В общем, что следует проверять, если статический HTML-файл выдает такую ошибку?
Сопоставления обработчиков HTTP
Недавно какой-то человек вставил средство сопоставления сценариев с подстановочными знаками, которое все испортило.
Ошибки типа 500 (внутренняя ошибка сервера) могут возникать по многим причинам.
среди прочего:
Взгляни на это сайт для нескольких примеров.
Основываясь на моем последнем обходе с аналогичной проблемой:
1) Посмотрите логи HTTP. Вы увидите «500 mmm nnn» вместо «sc-status sc-substatus sc-win32-status» в журналах HTTP. "Net helpmsg nnn" из командной строки может дать вам результат.
2) Добавьте в свою установку трассировку неудачных запросов и используйте соответствующее правило. Результаты XML могут быть полезны, а могут и не оказаться.
3) Если вы считаете, что это проблема безопасности, включите аудит файловых объектов в политике для этого сервера, затем установите аудит для каталога и файлов в нем так, чтобы все сбои были для всех. Проверьте раздел «Безопасность» в средстве просмотра событий.
4) Попробуйте Process Monitor (не Process Explorer). Запустите Process Monitor на три секунды или около того, достаточно долго, чтобы получить ваш запрос, и он потерпит неудачу. Используйте отслеживание неудачных запросов, чтобы получить идентификатор процесса, который не удался. Используйте фильтр Process Monitor, чтобы отображать только те события, в которых появляется идентификатор процесса - тогда вы можете увидеть, где произошел сбой.
Средство просмотра событий должно указать вам причину, по которой вы получаете ошибку 500, обычно он предоставляет гораздо более подробную информацию об исключении или проблеме конфигурации.
Еще одна быстрая вещь, в зависимости от используемого вами браузера, убедитесь, что у вас не установлен флажок «Включить понятные сообщения об ошибках» в дополнительных параметрах (для IE). Это может замаскировать ошибки сервера.
Просто чтобы добавить к этому как возможное решение, был клиент, который использовал фильтр ISAPI, но в указанном месте больше не было фильтра isapi. Журнала событий не было, sc-winsubstatus имел значение 2 (не удалось найти файл ..) Так что проверьте также фильтр ISAPI.