
У меня есть интранет-сайт, работающий на IIS 7. Когда я пытаюсь загрузить свой сайт, он каждый раз реагирует по-разному. Вот следующие различные сценарии, которые происходят, когда я пытаюсь загрузить свой сайт:
- Сайт загружается сразу и работает исправно.
- Сайт загружается медленно, и некоторые мои стили/изображения/javascript, похоже, загружаются некорректно.
- Я получаю сообщение об ошибке «503 служба недоступна»
Есть идеи, почему это происходит?
решение1
Итак, наконец, моя проблема была решена. Проблема была в конфигурации IIS, максимальное количество подключений было установлено на 5. Простое его увеличение решило ошибку.
решение2
Полное описание ошибки:
Веб-сервер (на котором работает веб-сайт) в настоящее время не может обработать HTTP-запрос из-за временной перегрузки или технического обслуживания сервера. Подразумевается, что это временное состояние, которое будет устранено после некоторой задержки. Некоторые серверы в этом состоянии могут также просто отклонить соединение сокета, в этом случае может быть сгенерирована другая ошибка, поскольку создание сокета истекло.
На вашем сервере может произойти следующее: все 80+ портов, которые получает сервер, будут иметь приоритет над портом 80. Это тот же порт, на котором работает ваш сайт.
Вот команда, чтобы проверить, правда ли это (запустите ее в cmd
):
netsh http show urlacl
если вы получите запись вроде этой:
Reserved URL : http://+:80/
...
Тогда это означает, что у вас происходит указанная выше проблема. И вам нужно удалить запись оттуда с помощью этой команды
netsh http delete urlacl url=http://+:80/
источники:
http://haacked.com/archive/2007/05/21/the-iis-7-team-rocks.aspx
http://haacked.com/archive/2007/05/18/service-unavailable-errors-in-iis-7-are-killing-me.aspx
решение3
Первым шагом в определении причины возникновения проблемы является сбор информации.
Если у вас есть физический доступ к серверу или через RDP, вы можете использовать его perfmon
для анализа производительности сервера.
Вот несколько статей о том, как это сделать (обратите внимание, что они относятся к 2003 году, но в 2008/2008 R2 ничего особо не изменилось):
Использование системного монитора (PerfMon) с приложениями ASP.NET (IIS 6.0)
Счетчики производительности для IIS
После того, как вы соберете информацию о том, что происходит с точки зрения производительности, вы сможете приступить к выявлению причины.