Что значит ошибка http error 503
HTTP Error 503. Service Unavailable: случай в поддержке хостинга
Начало
Хостинг предоставляет пользователям типичный стек Linux + Apache + Mysql + PHP и оболочку для управления. В нашем случае это ISP Manager 5 business на базе Centos 7 с конвертацией в CloudLinux. Со стороны административной части, CloudLinux предоставляет инструменты для управления лимитами, а так же PHP-селектор с различными режимами работы (CGI, FastCGI, LSAPI).
В этот раз к нам обратился клиент со следующей проблемой. Его сайт на движке WordPress периодически начал отдавать 503 ошибку, о чём он нам и сообщил.
Коды ответа, начинающиеся с 50х, относятся к проблемам на стороне сервера. Это могут быть проблемы как самого сайта, так и веб-сервера, который их обслуживает.
Типичные ситуации, при которых мы получаем следующие ошибки:
При выполнении диагностики данных ошибок, первым делом проверяем журналы веб-сервера. Обычно, этого достаточно, чтобы определить виновника и исправить проблему.
Касаемо 503 ошибки в нашем случае, в логах мы видели запись:
[lsapi:error] [pid 49817] [client x.x.x.x:6801] [host XXX.XX] Error on sending request(GET /index.php HTTP/1.0); uri(/index.php) content-length(0): ReceiveAckHdr: nothing to read from backend (LVE ID 8514), check docs.cloudlinux.com/mod_lsapi_troubleshooting.html
На основании только этого лога, определить в чём может быть проблема не представлялось возможным.
Первичная диагностика
Изначально, мы проверили статистику превышения лимитов пользователем. Незначительные превышения были зафиксированы за предыдущие дни, но ошибки в журналах были свежие, более того они появлялись в журнале с периодичностью от одной до нескольких минут.
Так же мы изучили рекомендации CloudLinux, по приведённой в журналах ошибок ссылке.
Изменение каких-либо параметров результата не принесло.
Сайт использовал базу данных на сервере Mysql 5.7, который работает на этом же сервере в контейнере Docker. В логах контейнера присутствовали сообщения:
Как раз, среди этих сообщений были сообщения о прерванном подключении исследуемого сайта. Это дало предположение, о том, что подключение к СУБД выполняется некорректно. Для проверки мы развернули копию сайта на тестовом домене, сконвертировали базу данных сайта под нативную в Centos 7 версию СУБД 5.5.65-MariaDB. На тестовом сайте выполнили несколько сотен запросов с помощью утилиты curl. Ошибку воспроизвести не удалось. Но этот результат был предварительным и после конвертации БД на рабочем сайте проблема так и осталась.
Таким образом, проблема некорректного подключения к СУБД была исключена.
Следующим предположением было проверить — нет ли проблем с самим сайтом. Для этого подняли отдельный виртуальный сервер, на нём подняли максимально схожее окружение. Единственное существенное отличие — отсутствие CloudLinux. На тестовом сервере проблему воспроизвести не удалось. Итак, мы определили, что в коде сайта всё в порядке. Тем не менее, пробовали так же отключать плагины WordPress, но проблема так же сохранялась.
В результате, пришли к тому, что проблема на нашем хостинге.
В ходе анализа журналов других сайтов было обнаружено, что проблема наблюдается на многих из них. Порядка 100 шт. на момент проверки:
В ходе тестирования обнаружили, что только что установленная чистая CMS WordPress также периодически выдаёт ошибку 503.
Примерно за 2 месяца до этого мы проводили работы по модернизации сервера, в частности изменили режим работы Apache с Worker на Prefork, с целью получить возможность использовать PHP в режиме LSAPI, вместо медленного CGI. Было предположение, о том, что это могло повлиять, либо требуются какие-то дополнительные настройки Apache, но вернуть обратно режим Worker мы уже не могли. В ходе изменения режима работы Apache выполняется изменение всех конфигов сайтов, процесс не быстрый и не всё могло пройти гладко.
Корректировка настроек Apache так же не дала желаемого результата.
Попутно искали схожие проблемы в поисковых системах. На одном из форумов участники утверждали, что проблема у хостера и нужно его менять, если проблему не решают. Звучит не очень оптимистично, когда ты находишься с другой стороны, но и клиента понять можно. Зачем ему нерабочий хостинг.
На данном этапе мы собрали имеющуюся информацию и результаты проведённых работ. С ними обратились в поддержку CloudLinux.
Детальная диагностика
В течение нескольких дней сотрудники поддержки CloudLinux вникали в проблему. В основном рекомендации были относительно установленных лимитов пользователей. Этот вопрос мы так же проверяли. При отключенных лимитах (Опция CageFS для пользователя) и с включенными лимитами в режиме PHP как модуль Apache проблема не наблюдалась. Исходя из этого, было сделано предположение, что каким-то образом оказывает влияние CloudLinux. В итоге, к концу недели запрос был эскалирован на 3-ий уровень поддержки, но решения пока не было.
Попутно изучали документацию Apache по режимам работы CGI и LSAPI, подняли второй экземпляр Apache на сервере хостинга на другом порту с тестовым сайтом, исключили влияние Nginx, отправляя запросы напрямую к Apache и получая те же коды ошибок.
Сдвинуться с мёртвой точки помогла документация LSAPI, как раз по диагностике 503 ошибки:
www.litespeedtech.com/support/wiki/doku.php/litespeed_wiki:php:503-errors
В секции Advanced Troubleshooting предлагается выполнять трассировку найденных в системе процессов:
Команда была доработана, с целью записи всех процессов в файлы с указанием их идентификаторов.
При просмотре файлов трассировок, мы видим в некоторых одинаковые строки:
Если взглянуть на описание структуры сигналов, отправляемых процессами, то увидим, что
Указывает на идентификатор процесса, отправившего сигнал.
На момент изучения трассировок, процесса с PID 42053 в системе уже нет, поэтому в процессе захвата трассировок решили отслеживать так же процессы, отправившие сигнал SIGHUP.
Под спойлером описаны действия, которые позволили определить что это за процесс, а так же получить его трассировку и дополнительную информацию, о том, каким процессам он отправляет сигнал SIGHUP.
Ждём пока в консоли 1 появятся сообщения, при этом в консоли 4 видим статус запроса с кодом ответа 503, прерываем выполнение в консоли 4.
Данный процесс выполнялся в системе с периодичностью раз в минуту.
Делаем трассировку нескольких процессов cagefsctl, чтобы отследить хотя бы один от начала до конца:
Далее изучаем что он делал, например:
Так же были получены идентификаторы процессов, которые были завершены сигналом SIGHUP. Завершённые процессы были процессами PHP, выполняющимися в данный момент.
Полученные данные были переданы в поддержку CloudLinux с целью уточнить легитимность данного процесса и должен ли он работать с такой периодичностью.
Единственная зацепка в данном случае осталась — проверить, кто является родительским процессом cagefsctl.
Результат не заставил себя долго ждать и какого же было наше удивление — родительским процессом для cagefsctl являлся процесс ispmgrnode. Это было немного странно, потому что уровень журналирования для ISP Manager был задан максимальным и в ispmgr.log не увидели вызов cagefsctl.
Теперь данных было достаточно, чтобы обратиться и в поддержку ISP System.
Итоги
Проблема была спровоцирована после выполнения обновления ISP Manager. В целом, обновление ISP Manager — штатная ситуация, но она привела к запуску процесса синхронизации, который завершался с ошибкой и перезапускался ежеминутно. Процесс синхронизации вызывал за собой процесс cagefsctl, который в свою очередь завершал процессы PHP.
Причиной зависания процесса синхронизации стали проведённые на хостинге работы по модернизации оборудования. За несколько месяцев до возникновения проблемы, в сервер был установлен PCI-e NVMe-накопитель, создан раздел XFS и смонтирован в каталог /var. На него были перенесены в том числе и файлы пользователей, но не обновились дисковые квоты. Опций монтирования было не достаточно, требовалось так же изменить тип файловой системы в параметрах ISP Manager, т.к. она вызывает команды обновления дисковых квот. Для Ext4 и XFS эти команды отличаются.
Таким образом, проблема дала о себе знать спустя несколько месяцев после проведения работ.
Выводы
Мы сами создали проблему, но это было не ясно до последнего момента. На будущее, будем стараться учесть как можно больше нюансов. Благодаря помощи более подготовленных коллег из поддержки CloudLinux и ISP System, проблема была решена. Теперь наш хостинг работает стабильно. А нами был получен опыт, который пригодится нам в будущей работе.
Что означает недоступность службы с ошибкой 503
Ошибка 503 Service Unavailable Error возникает, когда веб-сервер временно не может обработать запрос, который был отправлен пользователем. Почти всегда ошибка возникает на самом сайте, и вы ничего не можете с этим поделать, но попробуйте обратиться к сервису ещё раз позже. Тем не менее, есть несколько быстрых решений, которые можно попробовать реализовать, чтобы решить ошибку.
Что такое ошибка недоступности службы 503
Ошибка недоступности службы 503 указывает на то, что веб-серверу временно не удается обработать запрос. Это может быть веб-сервер, к которому Вы пытаетесь получить доступ напрямую, или другой сервер, к которому веб-сервер пытается получить доступ.
Это называется ошибкой 503, потому что это код состояния HTTP, который веб-сервер использует для определения такого рода ошибки. Ошибка может возникать по ряду причин, но две наиболее распространенные причины – это перегрузка сервера запросами или выполнение технического обслуживания.
Ошибка с кодом 503 отличается от внутренней ошибки сервера с кодом 500. Ошибка 500 возникает, когда что-то мешает серверу обработать ваш запрос, в то время как ошибка 503 означает, что сервер в порядке – он способен обработать ваш запрос, но позже.
Как и в случае других ошибок сервера, веб-дизайнеры могут настроить оформление страницы ошибки 503. Веб-сайты также могут использовать несколько отличные имена для этой ошибки.
Например, вы можете увидеть такие варианты:
Важно помнить, что ошибка 503 является ошибкой на стороне сервера. Это означает, что проблема с веб-сайтом, к которому вы пытаетесь получить доступ, а не с вашим компьютером. Это и хорошая, и плохая новость. Хорошая новость, потому что с вашим компьютером всё в порядке, а плохая, потому что обычно вы ничего не можете сделать, чтобы решить проблему.
Тем не менее, вот несколько быстрых решений, которые вы можете попробовать.
Обновите страницу
Как мы уже упоминали, ошибка 503 указывает на временную проблему, и иногда эта проблема очень временная. Например, сайт может быть перегружен трафиком. Таким образом, обновление страницы всегда стоит попробовать.
Большинство браузеров используют клавишу F5 для обновления, а также кнопку обновления можно найти в адресной строке. Это часто не решает проблему, но занимает всего секунду, так что стоит попробовать.
Предупреждение: обратите особое внимание, если ошибка возникает, когда вы совершаете платеж. Обновление страницы может привести к двойному платежу.
Проверьте, работает ли сайт у других людей
Всякий раз, когда вы не можете открыть сайт (по какой-либо причине), вы можете проверить, есть ли проблемы с подключением у других людей. Существует много инструментов для этого, но один из любимых – https://ping-admin.ru/free_test/. Просто укажите URL, который хотите проверить, и выберите точки доступа.
Если вы получите отчет о том, что сайт не работает для всех, Вам следует подождать восстановления доступности. Если отчет показывает, что сайт работает, то проблема может быть на вашей стороне.
Перезагрузите устройство
Если Вы уже использовали инструмент проверки доступности сайта и он определил, что сайт не доступен только для Вас. Попробуйте зайти через другой браузер.
Вполне возможно, что возникли какие-то проблемы с вашим компьютером или сетевым оборудованием (Wi-Fi, маршрутизатор, модем и т.д.). Простой выполните перезапуск компьютера и ваших сетевых устройств – это может помочь устранить проблему.
Свяжитесь с владельцем веб-сайта
Другой вариант – связаться с владельцем сайта напрямую. Посмотрите контактную информацию на веб-сайте и свяжитесь с ним, передав информацию о проблемах доступности. Если нет контактной формы, Вы можете попробовать связаться с автором веб-сайта в социальных сетях.
Что означает ошибка сервера 503 и как ее исправить
Сообщение на странице сайта 503 Service Temporary Unavailable – «сервис временно недоступен» может появляться из-за технических сбоев как на сервере, так и на компьютере пользователя. Последнее случается реже.
Наиболее распространенная причина проблемы – перегруженность сервера запросами. Он не успевает их обрабатывать, и всем клиентам в очереди выдает ошибку с кодом 503. Такая картина может наблюдаться, например, во время DDoS-атаки.
Обнаружив ошибку 503, лучше всего ничего не делать. Подождите 3-5 минут. Очередь запросов в большинстве случаев – временное явление, и вскоре сайт станет доступен. Чего точно не нужно делать,– это постоянно перезагружать страницу с ошибкой. Так вы только увеличиваете число запросов в очереди.
Как устранить ошибку 503 на стороне пользователя?
Что делать, если ошибка 503 – на стороне веб-ресурса?
Прежде всего, администратору сайта для ошибки сервера с кодом 503 желательно прописать параметр Retry After. Он будет показывать клиенту, через какое время тот может попробовать повторно соединится с сервером. Это уменьшит число бесконечных перезагрузок страниц и поможет снизить и без того чрезмерную в данный момент нагрузку на сервер.
Распространенные причины возникновения ошибки 503 и их исправление
В основном, ошибка 503 Service Unavailable вызывается следующими категориями причин:
Также ошибка 503 может быть вызвана тем, что ваш сайт «перерос» возможности вашего хостингового тарифного плана. В этом случае стоит подумать над тем, чтобы выбрать более производительный тариф виртуального хостинга или же VPS/VDS, выделенный сервер.
Как исправить причины ошибки
Уменьшаем число запросов к веб-серверу
Устранение ошибки 503 прежде всего подразумевает снижение нагрузки на веб-сервер. Для этого:
Оптимизируем работу с MySQL
Исправляем проблемы с CMS
Ошибка 503 Service Unavailable может быть вызвана некорректно работающими или «тяжелыми» компонентами движка вашего сайта. Чтобы выявить это, отключайте последовательно плагины или модули. Так вы найдете компонент, после выключения которого все начнет нормально работать. Оптимизируйте его или замените на более современный и быстрый.
Также рекомендуется поддерживать порядок в вашем «парке» плагинов – вовремя их обновлять, удалять те, что не используются, Плюс необходимо отслеживать корректность работы сайта после установки каждого нового модуля, а также после обновления старых – могут возникать конфликты программного обеспечения.
Оптимизируем работу скриптов
Что можно сделать для предотвращения проблемы?
В заключение дадим несколько советов – как предотвратить возникновение ошибки 503 Service Unavailable:
Ошибка 503
Что означает код ошибки «http error 503 the service is unavailable»?
В появлении ошибки 503 многие обвиняют сервер. Коды 5xx ошибок относятся к категории серверных, но возникают не только из-за проблем в его работе. Вот так обычно выглядит эта ошибка:
Код 503 означает, что сервер, где базируется ресурс, не принимает запросы на заданный адрес. Процедура приема запросов происходит беспрерывно, для всех аккаунтов выделено лимитированное число процессов для обработки запросов. Обработка запросов происходит поочередно. На длину очереди установлено ограничение. При превышении лимита прием запросов прекращается, а пользователю возвращают «error 503». Для решения проблемы достаточно прекратить подачу запросов с аккаунта.
Как узнать, кто виноват в ошибке 503?
Если Вы видите ошибку «http error 503 the service is unavailable» — и не знаете, проблема ли это избыточной нагрузки на Ваш сайт, или запросами перегружен сервер хостера, попробуйте открыть «соседей» по IP адресу.
Узнать их можно онлайн, например, на сервисе cy-pr.com:
Если с их сайтами все в порядке, то скорее всего ошибка возникла у Вас по одной из изложенных ниже причин.
Причины возникновения и способы исправить ошибку на удаленном сервере
Чтобы снизить частотность ошибки 503 нужно детально подойти к рассмотрению причин возникновения проблемы.
Передача больших файлов с использованием скриптов.
Отправка посредством PHP иногда вызывает зависание. Громоздкие файлы лучше не нагружать скриптами, работающими не все время. Если скрипт прекращает работать, файл перестает передаваться, а процесс работы веб сервера остается на время инициированным. При большом количестве одновременных загрузок это может привести к 503 ошибке.
Удаленный сервер возвратил ошибку 503 — сервер недоступен из-за большого количества запросов к внешним ресурсам.
Избегайте удаленных соединений с другими серверами, так как доступ к другим серверам иногда прекращается. Это провоцирует систематические запросы на связь с удаленным сервером. Если такое соединение требуется постоянно, то выставляйте минимальное значение таймаута для ожидания отклика. Отладка бесперебойной связи с удаленными серверами должна стать важной частью оптимизации.
Также для вставки используют коды, функции и прочие включения. Если они размещены на едином аккаунте, то не применяйте их в форме запросов на внешний URL-адрес, лучше использовать форму локальных путей, чтобы исключить дополнительную нагрузку на сервер.
Например, автор этого сайта явно переборщил с информерами:
Конечно, это не станет причиной 503-й ошибки, но при каждой загрузке страницы – это лишних 15 внешних запросов, а рост одновременных запросов рано или поздно приведет к тому, что сайт станет недоступен.
Неоптимизированные «тяжелые» или устаревшие модули CMS
Если сервер возвратил 503 ошибку, можно попробовать поочередно отключать модули, плагины, надстройки и другие дополнения. При этом вы заметите изменение скорости загрузки сайта. Это наблюдение позволит принять решение о замене или исправлении поврежденного дополнения. Удалите или отключите устаревшие или ненужные вам дополнения, если они включены в дистрибутивы CMS.
Медленные запросы к базе данных MySQL
Проблему решают несколькими путями: используют кэширование, оптимизируют запросы, индексируют таблицы данных по столбцам (упорядочить и сортировать). Если принятые меры окажутся недейственными, то стоит рассмотреть вариант замены скрипта на болееоптимальный вариант.
Вы можете купить домены RU, РФ, SU со скидкой!
Большое число одновременных запросов к серверу
Старайтесь свести к минимальному значению сумму запросов. Запросы создают не только пользователи вашего ресурса. Они поступают от индексирующих поисковых роботов и др. Число запросов увеличивается, если использовано чрезмерное число URL на файлы, загруженные с излишним количеством запросов.
Выходом станет объединение всех файлов в один. Запросы отправляются из чатов, из блоков сайта, при открытии множества браузерных вкладок, при применении iframe кодов на ресурсе, его использовании прочими сайтами. Увеличивают число запросов и Dos-атаки, флуд, спам.
Почтовая рассылка
Рассылки влияют на скорость загрузки, но как инструмент связи с постоянной аудиторией сайта — они незаменимы. Чтобы сократить загруженность сайта, их подвергают оптимизации. Скрипт, запускающий рассылки, добавляют в планировщик. Время инициации подобных скриптов назначают на ночь или на другое время, когда загруженность сервера уменьшается.
Если Вы всерьез ведете интересную рассылку – рекомендуем использовать сервисы, позволяющие отслеживать ее эффективность, например mailchimp, предлагающий отправку 12 000 писем в месяц бесплатно:
Большое число одновременных запросов к серверу
В скриптах делают запись на выполнение действий согласно установленному распорядку, если этого требует поставленная задача. Это расписание выполняется одновременно с запросами пользователей. Чтобы уменьшить нагрузку, переносите расписание в планировщик, при доступности планировщика.
Если вы провели оптимизацию, применяете кеширование и минимизировали запросы, а ресурсов еще не хватает, поэкспериментируйте с подбором адаптированного тарифного плана. Если выполненных действий окажется недостаточно, перейдите на виртуальный или выделенный сервер.
Пример задания, выполняющегося долгое время – синхронизация данных для интернет-магазинов с более чем 50 000 позиций. Поскольку каждый товар имеет от 20 до 100 полей в базе данных (от арткула до ссылок на дополнительные фото и условия доставки) – синхронизация данных может выполняться долго, при этом она создает десятки тысяч запросов к серверу.
iPipe – надёжный хостинг-провайдер с опытом работы более 15 лет.
Что означает ошибка http 403 Forbidden — доступ запрещен Уведомление 403 (Forbidden) – причисляется к серверным ошибкам, но оно не…
Простые способы исправить ошибку HTTP 503 Сервис недоступен
Размещено от Джейн Уинстон Июль 21, 2021 16: 06
Вы сталкивались с ошибкой 503 раньше? Например, вы можете получить сообщение о том, что служба 503 недоступна, служба 503 временно недоступна, ошибка сервера HTTP 503, ошибка HTTP 503 iis и другие подобные. Однако многие люди не знают значение ошибки 503 и просто закрывают веб-страницу напрямую.
Часть 1 : Что означает ошибка HTTP 503 Служба недоступна
Часть 2 : Как исправить ошибку HTTP 503
Поскольку ошибка HTTP 503 является ошибкой на стороне сервера, в большинстве случаев это не ваша ошибка. Таким образом, вы можете принять следующие меры, чтобы исправить ошибку 503 вручную.
Решение 1 : Перезагрузите сервер
На самом деле ошибка 503 может быть результатом узкого места в цепочке серверов, в которой размещается ваше приложение. Если вы являетесь администратором или можете связаться с этим человеком, вы можете перезапустить веб-сервер, чтобы обновить все. Убедитесь, что все серверы перезагружены надлежащим образом. В результате вы можете исправить ошибку службы 503, недоступную успешно и безопасно. Кроме того, вы можете перезагрузить сервер, чтобы исправить другие распространенные коды ошибок HTTP.
Решение 2 : Проблемы подключения к серверу
Ошибка 503 также может быть сигналом того, что в цепи что-то не так. В настоящее время большинство приложений состоят из различных серверов и распределены по нескольким системам. Возможно, одна часть цепочки серверов недоступна или недоступна, что приводит к недоступности службы HTTP-ошибки 503. Таким образом, обнаружение реального отключенного раздела является недоступным исправлением для службы 503.
Решение 3 : Неправильная настройка брандмауэра
Решение 4 : Проверьте логи
Журналы приложений могут записывать все действия, которые приложение выполняло по порядку. Например, вы можете увидеть запрошенные страницы, подключенные серверы и другую предоставленную базу данных с подробной информацией. Для большинства веб-приложений ведение журналов на стороне сервера в той или иной форме является типичной задачей. Следовательно, вы можете проверять журналы не только состояния и состояния всех подключенных служб, но и самого сервера. Ну, вы можете проверить журналы, когда ошибка 503 backend тоже вредна для здоровья.
Решение 5 : Код приложения или ошибки скрипта
Если вышеупомянутые решения бесполезны, то это должно быть ошибкой кода приложения. Вы можете отладить ваше приложение, чтобы выяснить, где проблема возникает вручную. Общим решением является резервное копирование всего приложения на локальный компьютер для разработки. После этого вы можете диагностировать ошибку недоступности сервиса 503 и шаг за шагом проверять код приложения.
Советы и рекомендации по исправлению ошибки HTTP Служба 503 легко
Если вы просто пользуетесь интернетом и имеете веб-страницу 503, вы можете попробовать эти простые способы, чтобы обойти распространенные ошибки 503.
1. Перезагрузить страницу
Первый выбор, который вы можете сделать, это перезагрузить веб-страницу вручную. Вы можете повторить URL в адресной строке. И вы также можете нажать кнопки F5 или Ctrl и R, чтобы обновить страницу. Будьте осторожны, когда видите ошибку 503 во время онлайн покупки. В противном случае вы можете использовать несколько сборов без предварительного уведомления.
2. Перезагрузите роутер и модем
Когда появляется сообщение «Service Unavailable –DNS Failure», вы можете перезагрузить маршрутизатор и модем, чтобы попробовать. Возможно, это временная ошибка веб-сайта, который вы посещаете, или DNS-сервера. Таким образом, вы можете выполнить перезагрузку для проверки. Кстати, вы можете перезагрузить компьютер с Windows или Mac, чтобы устранить небольшие сбои и сбои системы.
3. Связаться с сервером
4. Немного подождать
Это правда, что вы можете просмотреть страницу через несколько минут, ничего не делая. Иногда огромное увеличение посещений является огромным для сервера. Поэтому вы можете вернуться позже, чтобы обойти ошибку 503 без особых усилий.
Это распространенные методы для исправления ошибки HTTP службы 503. Как посетители, так и любители могут найти соответствующее решение из этой статьи. И вы также можете посмотреть видео об ошибках 503 YouTube, чтобы получить полезную информацию. Если у вас есть другая хорошая идея или сложность службы HTTP error 503, не стесняйтесь обращаться к нам.