Ошибка 503 Service Temporarily Unavailable - что она значит и как ее исправить - 3.7 out of 5 based on 11 votes

Ошибка 503 - что означает данная ошибка генерируемая веб-сервером при посещении страниц сайта, каковы причины ее возникновения и возможные способы устранения.

Ошибка 503 и способы ее устранения

Данная ошибка может появляться на сайтах сделанных на любых CMS, в том числе и на таких популярных как Joomla, WordPress, Drupal. Наверняка только самый удачливый пользователь никогда не сталкивался с проблемой: вводишь адрес странbцы, а в ответ «Service Temporarily Unavailable». Так что означает ошибка 503? Давайте разберемся.

Что означает данная ошибка

У каждого аккаунта на сервере хостинга есть определенное количество рабочих процессов, выделенное в соответствии с выбранным тарифным планом. Работа с запросами ведется в порядке очереди, они поступают на сервер, где легкие запросы обрабатываются мгновенно, а тяжелые – медленно. Всякая очередь ограничена тем или иным количеством запросов. Если новый находится за пределами этой границы, принят он не будет и вместо результата браузер выдаст оповещение: Ошибка 503 Сервис временно недоступен.

Возможно, что это причина временная и придется немножко подождать, пока сервер «отойдет» от перегрузки, освободив нужное количество ресурсов для обработки Вашего запроса. Лучше всего оставить попытку взаимодействовать с сайтом на 3-5 минут, иначе образуется другая очередь – обращений к серверу. Она только усугубит ситуацию.

Стандартная страница ошибки

Причины возникновения и борьба с ошибкой - инструкция для владельцев сайтов

Чтобы исправить данную ошибку нужно знать причины по которым она может появляться.

Большое количество запросов к серверу.

Слишком большое число запросов к серверу может возникать в следующих случаях:

Причина 1. Количество страниц на сайте не равняется количеству запросов посылаемых к серверу. Возникает это из-за того что на каждой странице сайта могут располагаться различные объекты, такие как: java- и PHP-скрипты, файлы таблиц стилей, изображения и т. д. Чтобы загрузить каждый из них необходимо послать отдельный запрос. Чем больше создается запросов к серверу, при запросе одной отдельной страницы тем больше вероятность возникновения ошибки.

Решение: Оптимизируйте свой сайт и скрипты, устраните не нужные элементы, которые не несут никакой пользы, на странице, а также используйте кэширование – это способно снизить нагрузку на ваш сервер.

Причина 2. Слишком много обращений к страницам сайта поисковых ботов и сканеров тех или иных сервисов, а также прочих анализаторов. Счетчиками посещаемости они не учитываются, но вот нагружают работу прилично, вызывая ошибку сервера 503.

Решение: Посмотреть точную статистику посещений можно только в лог-файлах веб-сервера. В некоторых случаях может помочь полное закрытие от посещения поисковыми роботами отдельных системных страниц сайта не предназначенных для поисковых систем.

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

Решение: Возможно придется сменить хостинг на более мощный, например сменить тариф виртуального хостинга на VPS или уже имеющийся тариф VPS на более производительный.

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

Решение: Необходимо проверить доступность ресурсов с которых подгружаются различные элементы и если они недоступны принять определенные меры. Либо выбрать наиболее надежные источники получения информеров или вовсе от них отказаться, если они не несут особой смысловой нагрузки и пользы для посетителей сайта.

Причина 5. DDOS-атака на сайт.

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

Медленная работа или зависание скриптов.

Подвоха стоит ждать и со стороны скриптов, они могут работать чересчур медленно или подвисать. Тогда-то пользователь и получит неприятное окошко «Ошибка 503 Service Temporarily Unavailable».

Зависать скрипты могут по следующим причинам:

Причина 1. Соединение с удаленным сервером.

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

Не используется ли в PHP-скриптах Вашего сайта Include-функции? Если они расположены на одном аккаунте, используйте локальный путь для обращения к ним, а не путь вида http://. Это поможет избежать дополнительного HTTP-запроса, занимающего лишний рабочий процесс, тем самым загружая сервер.

Причина 2. Множество «тяжелых», а иногда и испорченных или не доработанных расширений, плагинов и модулей CMS.

Решение: Необходимо проверить компоненты и плагины CMS. Отключайте их по очереди, и проверяйте работу сайта, чтобы найти «слабое звено», замедляющее загрузку сайта. Лучше всего отказаться от этих компонентов, исключив их совсем или найдя альтернативу пошустрее. Не забывайте удалять неактивные компоненты и плагины.

Причина 3. Через PHP передаются большие статичные файлы.

Решение: Лучше всего передавать файлы подобного рода напрямую, а не использовать для их передачи скрипты. Почему? Да потому, что продолжительность работы скриптов ограничена и передача файла может прерваться. К тому же, чтобы передать файл через PHP, нужен еще один процесс-рабочий, который выпадает из механизма обработки пользовательских запросов на время передачи файла.

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

Причина 4. Огромное количество медленных запросов к MySQL, а также не оптимизированность базы данных и её размер.

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

Причина 5. Почтовая рассылка.

Решение: Расположите скрипт почтовой рассылки в системном cron'е. Управлять им можно с контрольной панели хостинга. Лучше всего назначить запуск на ночь (московское время), когда сервер нагружен минимально. Учитывайте все ограничения, относительно количества писем, рассылаемых за час или день, а также время работы PHP скрипта.

Если вы перепробовали различные варианты и ошибка все равно часто возникает при посещении страниц вашего сайта, то мы рекомендуем или сменить вид хостинга с виртуального на VPS или вовсе сменить хостинг провайдера.

Для получения виртуального хостинга можете воспользоваться услугами качественного хостинг-провайдера HostLand, а для получения хорошего VPS услугами  FastVPS.

Материал подготовлен проектом: WebMasterMix.ru

1 1 1 1 1 1 1 1 1 1 Рейтинг 3.77 (11 Голосов)