Ошибка 503. Сервис недоступен
Я действительно новичок в создании веб-серверов в целом. У меня IIS 8 в Windows 8, и я пытаюсь создать небольшой сайт локально, выполняя некоторые разработки. В IIS я выбираю Add Site, даю имя, указывает на место, где у меня есть файл index.html(я пробовал разные местоположения, последние в ac:\inetpub\wwwroot\test -folder) и в других случаях использовал все настройки по умолчанию, Однако, когда я пытаюсь перейти на localhost, я получаю
Ошибка HTTP 503. Услуга недоступна.
Я проверил пул, и я дал IIS_IUSRS Полный доступ в целевой папке
Я искал, но не нашел ничего, что разрешило мою проблему, и ничего не полезно в EventLog или в папке C:\Windows\System32\LogFiles\HTTPERR
Может ли кто-нибудь сказать мне, что случилось?
Ответы
Ответ 1
Возможно, устаревшая идентификация пользователя устарела, особенно если вы попытались запустить остановленный пул приложений, а следующий запрос снова завершился неудачно.
В IIS перейдите в пулы приложений под сервером, затем найдите правильный пул приложений для своего веб-сайта и нажмите на него. В меню "Дополнительные параметры" справа выберите "Идентификация" и измените его и введите новый пользователь и пароль. Еще раз нажмите на свой пул приложений и выберите "Повторить", чтобы перезапустить его.
Вы также можете попробовать просмотреть сообщение об ошибке в средстве просмотра событий в разделе "Журналы Windows", "Приложение", "Сведения".
Ответ 2
В моем случае проблема была в DefaultAppPool. Я изменил "Load User Profile" на false, и теперь он работает. Однако я не знаю, есть ли побочные эффекты.
![enter image description here]()
Ответ 3
Другие ответы в порядке. Но в моем случае я работал над ящиком Windows, в котором уже запускался старый IIS, IISExpress или любой другой веб-сайт. То, что произошло, - это списки ACL, которые зарезервированы каким-то образом в системе. Итак, вы можете проверить это.
Вот консольная команда для сброса всех URL-адресов:
netsh http show urlacl
Проверьте, что вернулось здесь, и если что-то соответствует URL-адресу, который вы тестируете, вот команда удалить один URL-адрес acl (например):
netsh http delete urlacl url=http://localhost:2018/
(будьте осторожны, обратите внимание на то, что вы здесь делаете, если оно не связано с исходной проблемой)
Ответ 4
Проверьте свой прикладной пакет Application Framework - его можно остановить. Если это так, запустите его и снова проверьте.
Если у вас по-прежнему возникают проблемы, вы также можете проверить Event Viewer, чтобы найти причину этой ошибки, чтобы устранить неполадки.
Ответ 5
Если это кому-то помогает, и это может быть смешно, но не очевидно для меня, пул приложений не был запущен. Я просто предположил, что при запуске веб-сайта или создании пула приложений он начнется. На самом деле, я даже не знал, что вам нужно запустить пул приложений...
Ответ 6
![Пул приложений остановлен]()
В моем случае пул приложений остановился. Исправлена проблема с этим.
Мой сайт размещен на Arvixe. Вероятно, ошибка возникла из-за того, что у меня было приложение на основе членства, и что-то случилось, когда я загружал файлы.
Ответ 7
Если пул приложений запущен под определенным идентификатором пользователя, перейдите к настройкам предварительного обновления пароля имени пользователя еще раз,
это сработало для меня.
Ответ 8
Если пул приложений сразу же останавливается после его запуска и отображается журнал событий:
Рабочий процесс для пула приложений "APP_POOL_NAME" обнаружил ошибку "Не удается прочитать файл конфигурации", пытаясь прочитать данные конфигурации из файла "\?", Номер строки "0". Поле данных содержит код ошибки.
... вы можете столкнуться с ошибкой, которая, по-видимому, была внедрена в Windows 10 Fall Creators Update и/или.Net Framework v4.7.1. Его можно решить с помощью следующих шагов обхода, которые из этого ответа относятся к соответствующему вопросу. Не удается прочитать файл конфигурации "пытается прочитать данные конфигурации из файла" \\?\<EMPTY>, номер строки "0".
- Перейдите на диск, на котором установлен IIS, например.
C:\inetpub\temp\appPools\
- Удалите каталог (или виртуальный каталог) с тем же именем, что и ваш пул приложений.
- Перезагрузите/снова запустите свой пул приложений.
Я сообщил об этой ошибке Microsoft, создав следующую проблему в dotnet GitHub repo: после установки 4.7.1 IIS AppPool останавливается с "Не удается прочитать файл конфигурации".
РЕДАКТИРОВАТЬ
Microsoft ответила, что это известная проблема с процессом установки Windows для обновления Fall Creators и была задокументирована в KB 4050891, веб-приложения возвращают HTTP-ошибку 503 и событие WAS 5189 в Windows 10 Version 1709 (обновление Fall Creators). В этой статье приведена следующая процедура обхода, которая аналогична описанной выше. Однако учтите, что он будет перерабатывать все пулы приложений, независимо от того, затронуты ли они проблемой.
- Откройте окно Windows PowerShell с помощью параметра "Запуск от имени администратора".
- Выполните следующие команды:
-
Stop-Service -Force WAS
-
Remove-Item -Recurse -Force C:\inetpub\temp\appPools\*
-
Start-Service W3SVC
Ответ 9
Я решил эту проблему, удалив резервирование URL-адресов, сопоставляющее каталог приложений в IIS. У меня была аналогичная (определенно не та же) проблема, как описано в этой статье:
Не такая общая корневая причина для 503 службы недоступна
Ответ 10
Начните с просмотра в средстве просмотра событий либо в журнале системы, либо в журнале приложений.
В моем случае проблема заключалась в том, что ни один рабочий процесс не мог быть запущен для пула приложений, потому что его файл конфигурации не мог быть прочитан - я включил дополнительный ".". в конце его имени.
Ответ 11
В моем случае пул использует пользовательский идентификатор (учетную запись и пароль). После того, как пароль истек и перезагрузился, ошибка запустилась. Я просто исправляю пароль в идентификаторе
Ответ 12
Возможно, для вашего домена требуется учетная запись, используемая для запуска AppPool, для обеспечения прав на пакетный вход в систему. В этом случае вы увидите это же сообщение об ошибке. Как вы можете сказать, так ли это, глядя на события системы в средстве просмотра событий. Должно быть событие, говорящее, что учетная запись, используемая с пулом приложений, имеет либо "неправильный пароль, либо не имеет права на вход в систему".
Вот почему разработчики довольно часто используют IIS Express на своей машине разработки, поскольку он передает проблему с правами на вход в систему.
Ответ 13
Я столкнулся с той же проблемой, но это была проблема с фактическими настройками сайта в IIS
.
Выберите Advanced Settings...
для вашего сайта/приложения, а затем просмотрите значение Enabled Protocols
. Для любого резонанса значение было пустым для моего сайта и вызвало следующую ошибку:
Ошибка HTTP 503. Услуга недоступна.
Исправить было добавить http
и выбрать OK
. Затем сайт снова функционировал.
Ответ 14
В моем случае я создал новый пул приложений и просто забыл его запустить.
Ответ 15
Для Windows Server 2012 R2 я сделал это: IIS> App.. Бассейны> (имел черный ‘квадрат остановки)> щелкните его правой кнопкой мыши> начать
Ответ 16
Проверить средство просмотра событий - Windows - приложение. Если есть красная строка ошибки, сделанная из IIS-W3SVC-WP, и сообщение похоже на то, что не удалось загрузить модуль DLL C:\Windows\system32\inetsrv\rewrite.dll. Данные являются ошибкой. то вам не хватает некоторых функций настройки Windows.
В Windows Server 2012 зайдите в диспетчер сервера, добавьте роли и функции, веб-сервер (IIS) и добавьте соответствующую функцию. Обычно устанавливается большая часть раздела "Разработка приложений". Ниже приведен полный список функций IIS и связанных с ними DLL, чтобы помочь в диагностике.
Пройдя несколько итераций, я закончил вышеописанное сообщение об ошибке "rewrite.dll". Это привело к прямой загрузке и установке средства Microsoft Rewrite. Наконец, все веб-сайты ожили.
Ответ 17
Я выполнил ссылку Разрешить HTTP-ошибку 503 выше. В моем случае мой пул приложений останавливался каждый раз, когда я нажимал правой кнопкой мыши на свой файл svc и выбираю "Browse".
Я выполнил следующие шаги, чтобы решить проблему остановки пула приложений
Я использую Windows Server 2008 R2.
В пуле приложений диспетчера IIS я щелкнул правой кнопкой мыши на пуле приложений, который меня интересует, и нажмите "Дополнительные параметры". Это открывает всплывающее окно "Дополнительные настройки".
В разделе "Модель процесса" нажмите "Идентификация" и нажмите кнопку "Установить" в всплывающем окне "Идентификатор пула приложений". Это откроет всплывающее окно "Учетные данные", в котором я дал имя пользователя, пароль и подтвердил пароль и нажал "ОК".
Теперь, когда я нажимаю правой кнопкой мыши на свой файл svc, он открывается в браузере IE.
Ответ 18
Или, если ни одно из текущих решений не работает, загляните в каталог своего сайта для файла с именем app_offline.htm
. Это в основном говорит IIS, что ваш сайт недоступен и вместо этого отображает эту страницу.
Чтобы исправить это, удалите его или переименуйте в app_offline.htm.bak
.
В моем случае я добавил его, показывая коллеге, как использовать это, чтобы временно предотвратить трафик на сайт, а затем забыл, что я сделал это на своей коробке. Вздох.
Ответ 19
Если у вас установлена перезапись URL-адреса IIS, это может быть связано с этим. У меня были проблемы после обновления Windows 10.
fooobar.com/questions/25162/...
Перейдите к Windows Control Panel
> Programs and Features
> IIS URL Rewrite Module 2
> Repair
.
Ответ 20
В моем случае My Default Application Pool был отключен, чтобы устранить проблему, я проверил журналы IIS, расположенные в C:\Windows\System32\LogFile\HTTPERR. Прокрутите список до самых последних журналов ошибок, это покажет вам проблемы с IIS, если любая моя ошибка была "503 1 AppOffline DefaultPool"
Решение Откройте диспетчер IIS, -Click в пулах приложений, в нем перечислены все пулы приложений справа от вас. -Check, если пулы приложений, на которых размещен ваш api или сайт, имеют знак остановки на нем. Если это так, щелкните правой кнопкой мыши пул приложений и нажмите "Пуск". _Попробуйте снова получить доступ к вашему сервису от клиента. Это сработало для меня. Кричит @kombsh
Ответ 21
Наш сервер закончил свободное место в воскресенье днем, что привело к внезапному сбою приложения и возврату HTTP-ошибки 502. Журналы были пустыми, поэтому это должно было быть что-то, что происходило до того, как IIS даже что-то сделал.
Быстрый просмотр средства просмотра событий (WIN+R > eventvwr
) выявил проблему.
![введите описание изображения здесь]()
Хорошая идея отфильтровывать вывод окон системы и приложений в WAS, так как он может быть довольно подробным.
Приложение зависело от другого, который был отключен. Поэтому имейте в виду, что приложение может коснуться косвенно, если один из его зависимых процессов снизился. Мы просто повторно включили пул приложений .NET, и наше другое приложение снова запущено нормально.
Ответ 22
Если у вас есть McAfee HIPS, и если в журнале приложений для просмотра событий появляется следующая ошибка:
Не удалось загрузить модуль DLL C:\Windows\System32\inetsrv\HipIISEngineStub.dll.
Данные являются ошибкой.
Затем этот обходной путь на McAfee.com разрешил проблему в моем случае.
Цитата со страницы:
- Нажмите "Пуск", "Выполнить", введите "Исследователь" и нажмите "ОК".
- Перейдите к:% windir%\system32\inetsrv\config
- Откройте файл applicationHost.config как Администратор для редактирования в Блокноте.
-
Отредактируйте раздел <globalModules> и удалите следующую строку:
< добавить name= "MfeEngine" image = "% windir%\System32\inetsrv\HipIISEngineStub.dll" /" >
-
Отредактируйте раздел <modules> и удалите следующую строку:
< добавить name= "MfeEngine" /" >
- Закончив редактирование файла applicationHost.config, сохраните файл, затем перезапустите сервер IIS с помощью iisreset или перезапустите систему.
Ответ 23
После некоторых попыток и ошибок выяснилось, что пул приложений настроен на использование моей учетной записи домена как личности, и я вспомнил, что раньше я сменил пароль моей учетной записи домена. Сброс идентификатора пулов приложений (с использованием моего нового пароля) устранил проблему, и пул приложений можно было перезапустить без каких-либо проблем.
Ответ 24
Также проверьте адресную строку и убедитесь, что страница находится в нужном месте.
Эта ошибка может быть возвращена вместо 404 (Страница не найдена). В моем случае это была плохая ссылка на странице, в которой не было вложенной папки.
Ответ 25
Сегодня у меня была такая же ошибка. Проблема заключалась в том, что я недавно изменил пароль домена, поэтому мне пришлось обновить его в каждом пуле приложений, в разделе "Дополнительные параметры" > "Модель процесса" > "Учетные данные".
Ответ 26
В моем случае проблема заключалась в том, что другое приложение использовало порт, который я привязал к моему веб-сайту.
Я нашел его, выполнив следующую команду из командной строки, в которой перечислены все порты прослушивания и исполняемый файл:
netstat -b
Ответ 27
То же самое с IIS Express 10.0 после обновления Windows 7 до Windows 10.
Решение: перейдите в IIS и включите все отключенные веб-сайты и переустановите ядро ASP.NET.
Ответ 28
На самом деле, в моем случае https://localhost работал, но http://localhost дал ошибку внутреннего сервера HTTP 503. Изменение привязки веб-сайта по умолчанию в IIS для использования имени хоста localhost вместо пустого имени хоста.
tname для привязки http
Ответ 29
Это случилось со мной на сервере в нашей интрасети. После просмотра сообщений в блогах и журналов Windows выяснилось, что за несколько дней до Рождества 2015 года (связанного с Windows Update?) Мой пул приложений веб-сайта хотел создать файл конфигурации в папке c:\inetpub\temp\appPools, но доступ к этой папке был ограничен. Это привело к отключению пула приложений.
После добавления полного контроля для всех в эту временную папку я перезапустил службу активации Windows, и все снова появилось в сети.
Если бы я был немного более изящным, этого было бы достаточно, чтобы предоставить пользователю AppPool полный контроль над этой папкой, но я никогда не помню, как имя пула приложений и пользователь пула приложений связаны с каждым из них..
Ответ 30
Это также может произойти, если какие-либо последние установки или обновления произошли с платформой .NET и/или ASP.NET. Если вы не знаете, что произошло недавно, и если все ваши приложения используют версию ASP.NET версии 4, вы можете попробовать reset их, выполнив следующие команды в командной строке в режиме администратора.
cd C:\Windows\Microsoft.NET\Framework64\v4.0.30319
aspnet_regiis -i
Это позволяет установить или переустановить ASP.NET 4 и обновить существующие приложения, чтобы использовать версию пула приложений ASP.NET 4. Он обновляет обработчики IIS Classic и интегрированного режима и script сопоставления в метабазе IIS. Он также воссоздает пулы приложений ASP.NET v4.0 и ASP.NET v4.0 Classic и устанавливает платформы .NET Framework 4 в пулы приложений DefaultAppPool и Classic.NET.