Разбираемся, что означает ошибка 503 Service Unavailable, из-за чего она может возникнуть и что делать, чтобы убрать её с сайта.
Что внутри
- Что значит ошибка 503
- Как может выглядеть ошибка 503
- Почему возникает ошибка 503
- Как 503 ошибка влияет на SEO
- Как исправить ошибку 503
Что такое ошибка 503
Ошибка 503 Service Unavailable — это код состояния HTTP, один из стандартных ответов сервера на запрос браузера. Примеры других кодов HTTP: 403 Forbidden, 404 Not Found или 500 Internal Server Error.
Сервер отправляет один из таких кодов каждый раз, когда вы открываете в браузере новую страницу или переходите по ссылке. Даже если сайт нормально загрузился и никакой ошибки не было, отправляется код HTTP 200 OK.
Конкретно этот код HTTP — 503 Service Unavailable — означает, что прямо сейчас сервер не готов обработать запрос, потому что перегружен или на нём проводятся технические работы.
Как может выглядеть ошибка 503
Если на вашем сайте возникнет 503 ошибка, вы увидите стандартную страницу, которая будет отличаться в зависимости от веб-сервера на вашем хостинге. Вот несколько примеров.
Иногда страницу с этой ошибкой оформляют в общем дизайне сайта или приложения. Но так обычно делают только крупные бренды, потому что 503 ошибка встречается довольно редко. Вот пара примеров.
У движка или фреймворка, на котором сделан ваш сайт, тоже может быть своя страница 503 ошибки. Например, в панели управления WordPress она может выглядеть вот так.
В зависимости от дизайна будет отличаться и текст на странице. Не факт, что это будет именно «Ошибка 503» или «503 Service Unavailable». Вот некоторые варианты, которые могут вам повстречаться:
- Ошибка 503
- Error code: 503
- HTTP Error 503
- Код ошибки: 503
- Service Unavailable
- Ошибка сервера: 503.
- 503 Service Unavailable
- Error 503 Backend fetch failed
- 503 Service Temporarily Unavailable
- 503. That’s an error. That’s all we know.
- There was a problem with the network [503]
- The remote server returned an error: (503) Server Unavailable.
Почему возникает ошибка 503
Как мы уже выяснили, когда на сайте возникает 503 ошибка Service Unavailable, это значит, что сервер либо перегружен, либо на нём проводятся технические работы. Перегрузка может случиться по разным причинам. Вот несколько из них:
- DDoS-атака;
- повышенная активность поискового робота;
- большое количество медленных запросов к базе данных;
- запущен скрипт, который слишком сильно нагружает сервер;
- слишком много одновременно выполняющихся скриптов на сайте.
Это только самые распространённые ситуации. В вашем случае дело может быть в чём-то другом. Может даже случиться такое, что сразу несколько ситуаций накладываются друг на друга. В любой непонятной ситуации проверяйте логи, чтобы найти причину ошибки.
Как 503 ошибка влияет на SEO
Обычно, когда поисковый робот заходит на страницу и видит ошибку с кодом 5хх, он пробует зайти на неё ещё раз в пределах суток, рассчитывая на то, что владелец сайта решит проблему. Если ошибка возникает и при повторном посещении, бот может исключить страницу из индекса.
Проверить, выпала ли страница из индекса, можно в Google Search Console. Для этого войдите в консоль, введите в строке поиска URL страницы и нажмите Enter. Сервис проверит страницу и покажет её статус. Если страницы уже нет в индексе, нажмите «Запросить индексирование», чтобы повторно её туда добавить.
Также Search Console поможет вам своевременно обнаруживать ошибки. Для этого просто периодически проверяйте раздел «Покрытие» на главной странице панели в меню слева. В него будут записываться все ошибки на сайте.
Как добавить сайт в Google Search Console
Как исправить ошибку 503
Сначала убедитесь, что ваш провайдер не проводит техобслуживание сервера. У нас на хостинге в Панели клиента есть специальный раздел с уведомлениями, где мы предупреждаем о любых технических работах.
Также 503 ошибка может ненадолго возникнуть, если запустить обновление плагинов или темы на сайте с WordPress. Когда всё обновится, ошибка исчезнет сама.
Если же ошибка не проходит или периодически повторяется, дело всегда на стороне сервера. Чтобы исправить ошибку, понадобится доступ на хостинг. Поэтому, если вы просто зашли на чужой сайт и увидели код ошибки 503, единственный вариант — подождать. А если вы владелец сайта, вот несколько советов, как её исправить.
Проверьте логи
Это поможет сразу точно определить причину ошибки, а не перебирать все варианты подряд. В зависимости от вашего веб-сервера, логи будут по умолчанию храниться в одной из системных папок:
- /var/log/httpd/error_log или /var/log/apache2/error_log — для Apache;
- /usr/local/apache/logs/error_log — для Apache с установленной cPanel & WHM;
- /var/log/nginx/error_log — для Nginx.
Если вы управляете сервером при помощи какой-то панели управления, логи могут храниться в других папках. Например, в панели управления Webuzo, которую мы предоставляем бесплатно у себя на VPS, логи будут расположены по пути /usr/local/apps/apache/logs/vashdomen.err.
Доступ к этим файлам будет, только если у вас VPS или выделенный сервер. Если у вас виртуальный хостинг, по умолчанию логи будут в файле error_log, который лежит в корневой папке домена, но CMS могут переопределять путь к этому файлу в другие папки. Плюс некоторые записи могут попадать не туда, а в основной лог, к которому есть доступ только у провайдера. Поэтому, если у вас там ничего нет, напишите в службу поддержки и попросите предоставить последние строки.
Если по логам ничего не понятно, попробуйте советы ниже или погуглите фрагмент ошибки. Возможно, у кого-то была такая же проблема и её решение описали на каком-нибудь форуме. Либо свяжитесь с техподдержкой вашего хостинг-провайдера и попросите их помочь.
Оптимизируйте работу сайта
Отправлять массовые рассылки со своего сервера, особенно если у вас большая база подписчиков, лучше ночью, когда нагрузка на сайт минимальная. Днём этот процесс может вызвать 503 ошибку или как минимум замедлить работу сайта. Если отправляете рассылки при помощи стороннего сервиса, можно запускать и днём, разницы нет.
Плохо проиндексированные таблицы или большое количество MySQL-запросов могут создавать чрезмерную нагрузку на базу данных. Если разбираетесь, проанализируйте нагрузку при помощи команд show global status, vmstat, top. Если нет, обратитесь за советом к разработчику.
Отдельный момент — на любом сайте стоит использовать кэширование, потому что оно здорово разгружает сервер. Это не значит, что ошибка 503 перестанет возникать, как только вы его подключите, но часть нагрузки точно уйдёт.
Если у вас сайт на WordPress или другом движке, кэширование можно настроить при помощи модулей вроде LiteSpeed Cache. Он есть для многих популярных CMS. А если сайт разрабатывали с нуля, обсудите этот вопрос с разработчиками.
Отключите плагины
На сайте с WordPress перегрузка сервера может произойти из-за проблемы с плагинами. Чтобы это проверить, временно отключите их и снова зайдите на сайт.
Скорее всего, из-за ошибки у вас не будет доступа в консоль WordPress, поэтому отключать плагины придётся в панели управления хостингом. Вот как сделать это на хостинге с cPanel.
На главной странице панели найдите блок «Файлы» и перейдите в раздел «Менеджер файлов».
Затем перейдите в корневую папку домена, откройте в ней папку wp-content и поменяйте название папки plugins. Это отключит все плагины.
Корневая папка основного домена на хостинге обычно называется public_html, а дополнительного — так же, как и дополнительный домен.
Если это помогло и ошибка 503 исчезла, остаётся выяснить, какой именно плагин её вызвал. Для этого переименуйте обратно папку plugins, зайдите в неё и по очереди переименовывайте каждую папку, пока не найдёте источник ошибки.
Отключите тему
Тема вашего сайта на WordPress тоже может быть причиной 503 ошибки. Решение будет таким же — отключить текущую тему и проверить, помогло ли это. Но делается всё немного по-другому. Просто отключить папку с темами не поможет, вместо этого нужно изменить используемую тему в базе данных. Вот как это делается в cPanel.
На главной странице панели найдите блок «Базы данных» и перейдите в раздел «phpMyAdmin».
В phpMyAdmin выберите слева базу данных вашего сайта и перейдите в таблицу wp_options. Затем в верхнем меню перейдите в раздел «Search», в строке option_name введите слово «template» и нажмите «Go».
Найдётся именно та строка, в которой указана текущая тема вашего сайта. Кликните два раза по её названию или нажмите в строке кнопку «Edit» и поменяйте название темы на twentytwentyone. Это тема, которая устанавливается по умолчанию.
Если после этого ошибка 503 исчезла, значит дело в теме. Дальше можно попробовать её переустановить или восстановить одну из последних резервных копий. Перед переустановкой темы на всякий случай сделайте резервную копию сайта.
Ограничьте частоту сканирования сайта
Иногда поисковый робот Google или какого-то другого поисковика может серьёзно нагружать сайт в момент сканирования. В теории это может стать дополнительным фактором, который повлияет на работоспособность сервера и вызовет 503 ошибку. Если дело именно в боте, вы поймёте это по логам. Решением в этом случае будет ограничить частоту сканирования. Вот как сделать это для бота Google: инструкция по настройке частоты сканирования.
Отдельный момент — под видом поисковых ботов на сайт могут поступать зловредные запросы, например, при DDoS-атаке. Так часто делают, потому что некоторые могут ничего не заподозрить. В логах должен быть имя бота (user-agent) и его IP-адрес. Лучше проигнорировать user-agent и проверить, кому принадлежит IP. Если Google, значит всё в порядке. Если нет, заблокируйте подставного бота в конфигурационном файле сервера. Рассказываем, как сделать это в .htaccess в отдельной статье:
Перейдите на более мощный тариф
Если ни один из советов не помог, возможно, вашему сайту просто больше не хватает ресурсов текущего тарифного плана. Такое может быть, если вы используете дешёвый хостинг. Чем он дешевле, тем меньше каждому пользователю доступно ресурсов и тем больше ограничений.
Это нормально для развивающегося проекта — со временем переходить на более мощный тариф, но не факт, что дело именно в тарифе. Сначала стоит убедиться, что сайт оптимизирован. Рекомендуем для начала написать в техподдержку провайдера и рассказать о том, что вы уже сделали. Пусть их специалисты оценят ситуацию и посоветуют, что делать.
Что дальше
Если вы не нашли решения в статье, значит у вас специфическая ситуация. Пришлите в комментариях к этой статье текст из логов, попробуем вместе разобраться.
Если покупали хостинг у нас, присылайте логи сразу на почту support@hostiq.ua, чтобы вопросом занялись наши технические специалисты.
Переезжайте к нам на хостинг
Если вам нужен новый тариф, переезжайте к нам. У нас круглосуточная поддержка, которая решает проблемы быстро и в любое время. Даже если вопрос возникнет ночью в выходной или в праздничный день.
Cотрудники нашей техподдержки возьмут всю работу на себя: проанализируют сайт у текущего провайдера, подберут подходящий тариф и обсудят с вами условия переноса. А когда договоритесь о деталях, бесплатно перенесут ваш сайт на HOSTiQ и проверят, чтобы он исправно работал.
Подробнее о переезде