Windows Server 2003 обнаруживает ошибку 500 на IIS

Я использую IIS на Windows Server 2003, у меня возникли проблемы с 500 внутренняя ошибка сервера. Я хочу обнаружить, если какой-либо пользователь получает следующую ошибку и перезапустить сервер, если это произойдет.

Я просто не могу найти хороший способ определить, возвращает ли сервер эту ошибку. Я попытался обнаружить это, загрузив какую-то светлую страницу с сервера и проверив на наличие ошибок, но я не думаю, что это оптимальный вариант.

Пожалуйста, поделитесь некоторыми идеями вокруг моей задачи. Заранее спасибо.

1 ответ

Решение

Перезапуск IIS из-за ответа 500 - это почти то же самое, что взломать яйцо здоровенным ударом кувалды. Вы не собираетесь решать эту проблему с помощью перезапуска, вам придется решать свою проблему, выясняя, что вызывает 500, и исправляя его. Автоматический перезапуск сервера на 500 не является решением проблемы. В лучшем случае это очень слабое решение.

Если у вас есть страница, которая генерирует 500, и это достаточно плохо, чтобы потребовать перезагрузки сервера, то вы в плохом состоянии, и вы должны сосредоточиться на определении причины ошибки. Посмотрите в журналах IIS информацию об ошибках. Возможно, вам придется включить дополнительные поля журнала, чтобы получить необходимую информацию. Включите подробные отчеты об ошибках в вашем приложении, если оно еще не включено.

Тем не менее, если вы хотите определить, когда происходит 500, вам нужно будет сделать что-то вроде следующего:

  • Контролировать журнал IIS
  • Следите за журналом событий приложений Windows.
  • Напишите собственный скрипт (на стороне клиента) и добавьте его на страницу пользовательских ошибок для 500 ошибок, чтобы он уведомлял вас

Хорошее, компактное описание журналов IIS можно найти в этом посте. Связанный фрагмент:

Наиболее ценные файлы журнала для IIS6 (и их расположение):

  • Журнал ошибок HTTP.SYS - %windir%\System32\LogFiles\HTTPERR (Местоположение по умолчанию; настраивается)
  • Журнал веб-сайта IIS - %windir%\System32\LogFiles\W3SVC# (Местоположение по умолчанию; настраивается) **
  • Журнал событий (как системы, так и приложения)

Если вы сталкиваетесь с ситуацией слишком большого количества подключений, я все равно рекомендую устранить неполадки приложения, особенно в случае утечек памяти. Изолируйте проблемное приложение в своем пуле приложений, чтобы избежать перезапуска всего сервера.

Другие вопросы по тегам