Ошибка 500 (Internal Server Error) значит, что сервер сайта столкнулся с непредвиденным сбоем и не смог выполнить запрос. Виноват не браузер посетителя, а код, настройки или ресурсы сервера. Чаще всего она появляется после изменения: обновления модуля, смены версии PHP, переезда, правки .htaccess. Исправление начинается с журнала ошибок и вопроса, что меняли последним; если причину быстро не найти, выручает откат из резервной копии. Чтобы сбой не съедал заявки, нужны внешний мониторинг формы и корзины, копии перед обновлениями и тестовая копия сайта.
Ошибка 500 (Internal Server Error, «внутренняя ошибка сервера») значит, что сервер сайта получил запрос, но не смог его выполнить из-за непредвиденного сбоя у себя. Проблема не в браузере посетителя и не в интернете, а в коде, настройках или ресурсах сервера. Код 500 самый общий из серверных ошибок: он говорит «что-то сломалось», но не говорит что. Поэтому исправление всегда начинается с журнала ошибок сервера. Ниже разберём, чем 500 отличается от 502, 503 и 504, почему она возникает, как найти причину по шагам и как сделать, чтобы сбой не съедал заявки и позиции в поиске.
Что значит ошибка 500 и как она выглядит
Каждый ответ сервера сопровождается трёхзначным кодом состояния. Коды на 2 означают успех, на 3 переадресацию, на 4 ошибку на стороне запроса (например, 404, страницы нет), на 5 ошибку на стороне сервера. По стандарту HTTP, документу RFC 9110, код 500 означает, что сервер столкнулся с непредвиденным условием, которое помешало выполнить запрос.
Посетитель видит это по-разному, в зависимости от сайта и браузера:
- надпись «500 Internal Server Error» на белом фоне;
- сообщение браузера вроде «HTTP ERROR 500» и предложение обновить страницу;
- пустая белая страница без текста;
- оформленная страница сайта «Что-то пошло не так»;
- отдельное сообщение платформы, например у CMS о критической ошибке.
Коварство ошибки 500 в том, что она бывает частичной. Главная страница открывается, а корзина, форма заявки или личный кабинет отдают 500. Владелец заходит на сайт, видит, что всё работает, а заявки при этом не приходят.
Ошибки 500, 502, 503 и 504: в чём разница
Все коды на 5 означают, что виноват сервер, но указывают на разные места. Это сразу сужает поиск.
| Код | Что значит по RFC 9110 | Где обычно искать причину |
|---|---|---|
| 500 Internal Server Error | Непредвиденная ошибка, сервер не смог выполнить запрос | Код сайта, плагины, настройки, права на файлы, лимиты |
| 501 Not Implemented | Сервер не поддерживает нужную функцию, например метод запроса | Настройки сервера, встречается редко |
| 502 Bad Gateway | Промежуточный сервер получил некорректный ответ от следующего сервера | Связка веб-сервера и PHP или приложения: процесс упал или не запущен |
| 503 Service Unavailable | Сервер временно не может обработать запрос из-за перегрузки или обслуживания | Нагрузка, лимиты тарифа, плановые работы |
| 504 Gateway Timeout | Промежуточный сервер не дождался ответа от следующего | Медленные запросы к базе, долгие скрипты, внешние сервисы |
Чтобы понять, где именно рождается ошибка, полезно представлять путь запроса. Обычно он проходит несколько звеньев, и каждое может сломаться по-своему.

Для плановых работ правильный код 503, а не 500. Стандарт разрешает добавить к нему заголовок Retry-After с подсказкой, когда вернуться. Так поисковые роботы и сервисы понимают, что сайт закрыт временно.
Почему возникает ошибка 500: частые причины
Чаще всего ошибка 500 появляется сразу после изменения: обновили плагин, сменили версию PHP, переехали на другой хостинг, выложили новую версию кода. Поэтому первый вопрос всегда «что меняли последним».
| Причина | Как проявляется | Что проверить |
|---|---|---|
| Ошибка в коде или в обновлённом плагине | Сразу после обновления, часто на всех страницах | Журнал ошибок PHP: файл и строка, где упало |
| Ошибка в файле .htaccess | Весь сайт сразу, после правки настроек или установки модуля | Временно переименовать .htaccess и проверить сайт |
| Смена версии PHP | После обновления тарифа или переезда | Совместима ли CMS и модули с новой версией |
| Нет подключения к базе данных | Все страницы с данными, иногда вперемешку | Логин и пароль базы в настройках, доступна ли база |
| Нехватка памяти или времени выполнения | Тяжёлые страницы, выгрузки, импорт каталога | Лимиты тарифа и записи о превышении в журнале |
| Неверные права на файлы | После переноса файлов или распаковки архива | Права на папки и файлы по рекомендации хостинга |
| Не установлены зависимости | После выкладки новой версии кода | Все ли библиотеки на месте, как на тестовой копии |
| Закончилось место на диске | Внезапно, часто вместе с ошибками загрузки файлов | Свободное место, размер журналов и резервных копий |
| Сбой внешнего сервиса без обработки в коде | Только в форме, корзине или оплате | Ответы CRM, платёжного сервиса, службы доставки |
Отдельно про версии PHP. По графику на официальном сайте php.net ветка 8.2 получает только исправления безопасности до 31 декабря 2026 года, после этого её поддержка заканчивается. Когда сайт переводят на новую версию PHP, старый код или давно не обновлённые модули могут начать отдавать 500. Если сайт работает на PHP 8.2 или более старой версии, проверьте совместимость заранее на тестовой копии.
Как исправить ошибку 500: пошаговый план для владельца
Исправлять ошибку надёжнее всего по журналу, а не наугад. План ниже подходит для обычного сайта на хостинге. Часть шагов можно сделать самому, остальное передать разработчику с готовыми данными.
- Зафиксируйте симптомы. Какие адреса отдают 500, с какого времени, у всех или у части посетителей, после какого действия. Сделайте снимок экрана.
- Вспомните последнее изменение. Обновления CMS, плагинов и тем, правки настроек, смена тарифа или версии PHP, выкладка кода. Если изменение было, откат часто решает проблему за минуты.
- Откройте журнал ошибок. На обычном хостинге он доступен в панели управления, обычно в разделе журналов или логов сайта. Ищите записи с временем сбоя: там будет текст ошибки, файл и строка.
- Проверьте .htaccess. Если сайт на Apache, временно переименуйте файл. Заработало, значит, ошибка в одной из директив, возвращайте их по одной.
- Отключите недавно обновлённые модули. В CMS по одному, начиная с последнего. Если админка недоступна, это делают переименованием папки модуля через файловый менеджер.
- Сверьте версию PHP. Если её меняли, временно верните прежнюю в панели хостинга, пока разработчик правит совместимость.
- Проверьте базу данных и место на диске. Доступна ли база, не закончилось ли место, не превышены ли лимиты.
- Восстановите из резервной копии. Если причину быстро найти не удалось, а сайт приносит заявки, откат на вчерашнюю копию часто быстрее поиска. Как настроить копии, чтобы было куда откатываться, написано в статье про бэкапы.
- Напишите в поддержку хостинга. Если ошибка на уровне сервера, например упал процесс PHP или кончились ресурсы, хостинг увидит это быстрее.
Как читать журнал ошибок
Запись в журнале обычно состоит из времени, уровня ошибки, текста и пути к файлу со строкой. Не нужно понимать код, чтобы по тексту понять направление поиска. Несколько частых сообщений PHP и Apache:
| Фрагмент текста в журнале | Что это значит | Что делать |
|---|---|---|
| Allowed memory size of … bytes exhausted | Скрипту не хватило памяти | Найти тяжёлую операцию, поднять лимит в настройках или тарифе |
| Call to undefined function | Код вызывает функцию, которой нет: модуль не совместим с версией PHP или не загружен | Посмотреть, какой модуль указан в пути, обновить или отключить его |
| Parse error: syntax error | Опечатка в коде, часто после ручной правки | Вернуть файл из копии или исправить строку из журнала |
| Invalid command … perhaps misspelled | Apache не понимает директиву в .htaccess | Убрать или исправить эту строку в .htaccess |
| Permission denied | Серверу не хватает прав на файл или папку | Выставить права по рекомендации хостинга |
Путь к файлу в записи часто сразу показывает виновника: если в нём папка конкретного плагина или модуля, начинайте с него.
Что делать в конкретной ситуации, удобно посмотреть по вкладкам.
- Что сделать: отключите обновлённый модуль или верните копию до обновления, затем ищите в журнале файл и строку с ошибкой.
- На будущее: обновления сначала на тестовой копии, перед обновлением свежая резервная копия.
- Что сделать: сравните версию PHP и расширения, доступ к базе, права на файлы и .htaccess со старым сервером.
- На будущее: перед переездом список настроек сервера, после переезда проверка формы, корзины и кабинета.
- Что сделать: проверьте, отвечают ли CRM, почтовый или платёжный сервис, не сменились ли ключи доступа и адреса.
- На будущее: код должен обрабатывать отказ внешнего сервиса: сохранить заявку и повторить отправку, а не показывать посетителю 500.
- Что сделать: найдите в журнале сообщения о превышении памяти или времени, сверьте со временем рассылок, рекламы, импорта.
- На будущее: тяжёлые задачи по расписанию ночью, кэширование, при необходимости тариф с запасом.
- Что сделать: если добавляли свой код или виджет, уберите его. Если нет, проверьте страницу статуса платформы и напишите в её поддержку.
- На будущее: записывайте, какие вставки и интеграции стоят на сайте и кто их добавил.
Вывод: в большинстве случаев ошибка 500 связана с последним изменением. Поэтому журнал изменений и резервная копия перед каждым обновлением экономят больше времени, чем любая инструкция.
Что делать посетителю, если сайт выдаёт ошибку 500
Посетитель исправить ошибку не может, но может проверить, что дело не в его браузере, и не потерять данные.
- обновите страницу через минуту: сбой бывает коротким;
- откройте сайт в режиме инкогнито или в другом браузере;
- очистите куки этого сайта;
- если ошибка случилась при оплате или оформлении заказа, не платите повторно, сначала проверьте почту и личный кабинет;
- сообщите владельцу сайта, указав адрес страницы и время.
Чем опасна ошибка 500 для бизнеса
Даже короткая ошибка 500 стоит денег, если она попадает на форму заявки, корзину или оплату. Человек не будет ждать, он уйдёт к конкуренту. А частичный сбой может длиться днями, пока кто-то не заметит, что заявки перестали приходить.
Вторая потеря в поиске. В справке Google для разработчиков сказано, что при ошибках 5xx робот Google временно снижает скорость сканирования сайта, уже проиндексированные адреса какое-то время сохраняются, но адреса, которые постоянно отдают ошибку сервера, со временем удаляются из индекса. Яндекс в справке Вебмастера тоже относит 500 к ошибкам, которые нужно устранить по журналам сервера. Короткий сбой поиск переживёт, а неделя ошибок на важных страницах уже риск.
Третья потеря в интеграциях. Если сайт передаёт заявки в CRM и на сайте ошибка, передача может не сработать, а повторить её некому. Поэтому важно, чтобы у обмена был журнал и повторные попытки, об этом подробно в статье про API-интеграцию.
Прикиньте, во что вам обходятся сбои, в калькуляторе ниже.
Как считается: сохранённые заявки = заявки в месяц × доля, теряемая из-за сбоев; прибыль = сохранённые заявки × доля сделок × чек × маржа, минус сопровождение. Доля потерь в примерах условная: 5% значит, что форма или корзина в сумме не работала около полутора дней в месяц и никто этого не заметил, 3% около дня. Подставьте свою оценку: сколько часов в месяц сайт работал с ошибками и сколько заявок приходится на эти часы.
Как не допускать ошибки 500
Полностью исключить сбои нельзя, но можно сделать так, чтобы они случались реже, замечались за минуты и исправлялись быстро.
- Тестовая копия сайта. Обновления CMS, модулей и PHP сначала проверяют на копии и только потом переносят на рабочий сайт.
- Резервные копии перед каждым изменением. Плюс регулярные автоматические копии, которые хранятся отдельно от сервера.
- Мониторинг доступности. Внешний сервис раз в несколько минут открывает главную, форму заявки и корзину и сообщает, если пришла не 200, а 500.
- Тестовая заявка. Раз в день или неделю автоматически или вручную отправляйте заявку и проверяйте, что она дошла до CRM.
- Журналы под рукой. Кто-то знает, где лежат журналы ошибок, и умеет их читать.
- План обновлений. Версии PHP и CMS обновляют по графику, а не когда хостинг отключит старую версию.
- Страница ошибки. Понятная страница с телефоном и мессенджером вместо белого экрана, при этом она должна отдавать код 500, а не 200.
Обычно всё это входит в сопровождение сайта. Что ещё должно быть в такой услуге и как прописать сроки реакции, разобрано в статьях о составе сопровождения и про SLA. Если ошибки повторяются после каждого обновления, это признак накопленного технического долга: заплатки поверх заплаток, устаревшие модули, код без тестов.

Что написать разработчику или в поддержку хостинга
Чем точнее описание, тем быстрее найдут причину. Скопируйте этот список и заполните:
- Адреса страниц с ошибкой и пример адреса, где всё работает.
- Когда началось: дата и время с точностью до минут.
- Что меняли перед этим: обновления, настройки, тариф, перенос.
- У всех ли ошибка: инкогнито, другое устройство, другая сеть.
- Что показывает журнал ошибок на это время, если вы его нашли.
- Какие действия уже сделали: откат, отключение модулей, смена версии PHP.
Если сделать одно дело после чтения, узнайте, где у вашего сайта лежит журнал ошибок и кто получит уведомление, когда форма заявки перестанет работать. Если ответа нет, сайт держится на удаче.
- RFC 9110 HTTP Semantics, раздел 15.6: коды 5xx (500, 501, 502, 503, 504)
- MDN: 500 Internal Server Error
- Google Search Central: как ошибки HTTP и сети влияют на сканирование и индекс
- Яндекс Вебмастер: коды ответа HTTP и что с ними делать
- php.net: поддерживаемые версии PHP и сроки поддержки (проверено в октябре 2026)
Частые вопросы
Что значит ошибка 500 на сайте?
Сервер сайта получил запрос, но не смог его выполнить из-за непредвиденной ошибки у себя. Это общий код: он сообщает, что сбой на сервере, но не говорит, какой именно. Причину показывает журнал ошибок сервера.
Ошибка 500 у меня или у сайта?
Почти всегда у сайта. Чтобы проверить, откройте страницу в режиме инкогнито, в другом браузере или с телефона через мобильный интернет. Если ошибка везде, исправлять её должен владелец сайта или его подрядчик.
Чем ошибка 500 отличается от 502 и 504?
500 значит, что сбой произошёл в самом приложении сайта. 502 и 504 возникают на стыке серверов: промежуточный сервер получил некорректный ответ или не дождался ответа от приложения. Для 504 обычно ищут медленные запросы и долгие скрипты.
Как быстро исправить ошибку 500?
Вспомните, что меняли последним, и откатите это изменение. Если не помогло, откройте журнал ошибок в панели хостинга и найдите запись на время сбоя. Когда причину быстро не найти, а сайт приносит заявки, восстановите вчерашнюю резервную копию.
Влияет ли ошибка 500 на позиции в поиске?
Короткий сбой почти не влияет. По справке Google, при ошибках 5xx робот снижает скорость сканирования, а адреса, которые постоянно отдают ошибку сервера, со временем удаляет из индекса. Поэтому затяжные ошибки на важных страницах опасны.
Какой код отдавать при плановых работах?
Код 503 Service Unavailable. По стандарту HTTP он означает временную недоступность, а заголовок Retry-After подсказывает, когда вернуться. Код 500 для этого не подходит.
Может ли ошибка 500 появиться без моих изменений?
Да. Хостинг мог обновить версию PHP, закончилось место на диске, превышены лимиты из-за наплыва посетителей, перестал отвечать внешний сервис, к которому обращается форма. Поэтому журнал ошибок и мониторинг нужны даже на сайте, который никто не трогает.




