Краткий ответ: ошибка 500 WordPress означает внутренний сбой на сервере. Чаще всего причина в PHP-ошибке, конфликте плагина, теме, повреждённом .htaccess, нехватке памяти, неправильной версии PHP, правах файлов, кеше или проблеме на хостинге. Безопасный порядок такой: сделать копию, включить debug.log, проверить логи хостинга, временно отключить плагины через FTP, проверить тему, .htaccess, PHP memory limit и настройки сервера.
Ошибка 500 неприятна тем, что браузер почти ничего не объясняет. На экране может быть просто “Internal Server Error”, “HTTP 500”, белая страница или сообщение “На сайте произошла критическая ошибка”. Поэтому главная задача — не угадать, а найти точную причину в логах.
Если ошибка появилась после обновления плагина, полезно отдельно разобрать материал после обновления плагина сломался сайт WordPress. Если вместе с ошибкой 500 перестал открываться вход в панель управления, смотрите также что делать, если не работает админка WordPress.
Ошибка 500 — это не одна конкретная поломка. Это общий ответ сервера: “я не смог обработать запрос”. В WordPress такой сбой чаще всего возникает из-за PHP-кода, плагинов, темы, настроек сервера или файла .htaccess.
Типовые причины:
functions.php или кастомном коде..htaccess — неправильные rewrite rules, редиректы, ограничения доступа или старые правила кеша.memory_limit, особенно на WooCommerce, конструкторах страниц и тяжёлых темах.Если причина похожа на конфликт плагинов, можно отдельно использовать инструкцию как найти конфликт плагинов WordPress. Это важно, потому что простое отключение всех плагинов не всегда показывает, какой именно модуль ломает сайт.
Перед исправлением нужно понять, где появляется ошибка 500: на всём сайте, только в админке, только на одной странице, только при отправке формы, только на checkout WooCommerce или только при AJAX-запросе.
| Где появляется ошибка 500 | Вероятная причина | Что проверить первым |
|---|---|---|
| На всём сайте | PHP fatal error, .htaccess, сервер, тема, основной плагин |
debug.log, error_log, .htaccess, плагины через FTP |
| Только в админке | плагин админки, WooCommerce, security, admin-ajax, память PHP | логи, плагины, память, тяжёлые запросы, cron |
| Только на одной странице | шорткод, блок, шаблон, кастомное поле, PHP в теме | шаблон страницы, блоки, консоль, PHP-лог |
| При отправке формы | SMTP, AJAX, reCAPTCHA, PHP handler, security-плагин | admin-ajax.php, логи формы, SMTP, WAF |
| На WooCommerce checkout | оплата, доставка, кеш, wc-ajax, сессии, конфликт плагина | логи WooCommerce, консоль, кеш, платёжный модуль |
| После обновления | несовместимость плагина, темы или PHP | последние обновления, debug.log, откат или отключение проблемного плагина |
| После переноса сайта | пути, PHP, база, .htaccess, права файлов, домен |
wp-config.php, база, URL сайта, error_log |
/wp-admin/?wp-content/debug.log?Если не хотите рисковать сайтом и тратить время на эксперименты, можно оставить заявку. Я посмотрю задачу и предложу аккуратное решение.
Безопаснее идти по шагам. Не удаляйте файлы и не чистите базу до диагностики.
Перед правками сохраните файлы и базу данных. Даже если сайт уже показывает 500, текущая копия поможет откатить неудачные действия.
Минимум, который стоит сохранить:
wp-content;wp-config.php;.htaccess;Ошибка 500 без логов — это угадывание. Включите логирование WordPress и повторите действие, которое вызывает ошибку.
После этого проверьте файл:
wp-content/debug.log
Ищите строки с:
PHP Fatal errorParse errorUncaught ErrorAllowed memory size exhaustedCannot redeclare functionCall to undefined functionClass not foundНе все ошибки попадают в debug.log. Иногда причина видна только в серверном error_log: проблема PHP-FPM, Apache/Nginx, прав файлов, лимитов, WAF или нехватки ресурсов.
Где искать:
error_log в корне сайта;Если сайт на Apache или LiteSpeed, повреждённый .htaccess часто вызывает 500. Для проверки временно переименуйте файл:
.htaccess.htaccess_oldПосле этого откройте сайт. Если ошибка исчезла, причина в правилах .htaccess. Потом нужно создать новый корректный файл и аккуратно вернуть нужные редиректы, кеш и security-правила.
Если доступа к админке нет, зайдите через FTP/SFTP или файловый менеджер хостинга и переименуйте папку:
wp-content/pluginswp-content/plugins-disabledЕсли сайт заработал, причина в одном из плагинов. Верните папке имя plugins и включайте плагины по одному. После каждого включения проверяйте сайт и логи.
Если плагины не виноваты, проверьте тему. Частая причина — ошибка в functions.php, старый код, конфликт с версией PHP или поломанный шаблон.
Через FTP можно временно переименовать папку активной темы в wp-content/themes/. WordPress попробует переключиться на стандартную тему, если она установлена.
Если стандартной темы нет, лучше загрузить её или переключить тему через WP-CLI.
Если в логе есть Allowed memory size exhausted, WordPress упирается в лимит памяти. Это может происходить из-за тяжёлой темы, WooCommerce, конструктора страниц, импорта, отчётов, кеша или большого количества плагинов.
Увеличение лимита может временно вернуть сайт, но это не всегда решает причину. Если память постоянно заканчивается, нужно искать тяжёлый код, запросы или конфликт.
Если ошибка появилась после смены версии PHP, временно верните предыдущую версию и проверьте логи. Старые плагины могут ломаться на новых версиях PHP, а новые плагины могут требовать более свежую версию.
Особенно внимательно проверяйте ошибки вида:
Call to undefined functionDeprecated, если сайт переводит предупреждения в ошибки;TypeErrorFatal errorClass not foundОбычно рабочие значения:
755;644.Не ставьте 777. Это может временно убрать одну проблему, но создаёт риск безопасности.
Иногда ошибка 500 появляется из-за кеша, Cloudflare, WAF, ModSecurity или агрессивной защиты. Особенно если ошибка возникает только при отправке формы, AJAX-запросе, сохранении записи или оформлении заказа.
Проверьте:
Важно: код ниже может повлиять на отображение ошибок, работу админки, кеш, WooCommerce, формы и безопасность. Перед изменениями сделайте копию файлов и базы. Не оставляйте отображение ошибок на экране включённым на рабочем сайте.
Куда вставлять: файл wp-config.php, перед строкой /* That's all, stop editing! */.
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);
@ini_set('display_errors', 0);
Важно: увеличение памяти может помочь, если ошибка связана с лимитом, но не исправляет тяжёлый код или конфликт плагинов. Вставлять в wp-config.php.
define('WP_MEMORY_LIMIT', '256M');
define('WP_MAX_MEMORY_LIMIT', '512M');
Важно: сохраните старый .htaccess. Если на сайте есть редиректы, мультиязычность, кеш, HTTPS-правила или защита, простая замена может отключить часть настроек.
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
Важно: команда отключит все плагины. На WooCommerce-сайте это может временно отключить магазин, оплату, доставку, формы, CRM, Telegram и другие интеграции.
wp plugin deactivate --all
wp plugin list
wp plugin activate nazvanie-plagina
Важно: переключение темы может изменить внешний вид сайта и отключить функции, которые были реализованы в активной теме.
wp theme list
wp theme activate twentytwentyfour
Эта команда помогает понять, не изменены ли файлы ядра WordPress.
wp core verify-checksums
После диагностики должен быть понятен источник ошибки 500. Возможные результаты:
functions.php;.htaccess;Правильный результат — не просто убрать страницу с ошибкой 500, а понять, что именно её вызывало. Иначе сайт может снова упасть после обновления, очистки кеша, запуска cron, оформления заказа или отправки формы.
Проверьте плагины, которые работают в панели управления: SEO-плагины, WooCommerce, редакторы страниц, security-плагины, статистику, импорт/экспорт, плагины бэкапа и кеша.
Также проверьте:
admin-ajax.php;Проверьте оплату, доставку, поля checkout, кеш, сессии, AJAX, логи WooCommerce и платёжный модуль. Не отключайте на рабочем магазине все плагины без понимания, потому что можно временно остановить продажи.
Через FTP откройте файл активной темы и отмените последнюю правку. Частые ошибки:
Проверьте:
wp-config.php;$table_prefix;.htaccess;wp_options.Периодическая ошибка часто связана не с одним файлом, а с нагрузкой:
В таком случае нужно смотреть не только WordPress, но и графики хостинга, access log, slow log и время появления ошибки.
.htaccess без сохранения старого файла. Можно потерять редиректы, HTTPS-правила, кеш и security-настройки.WP_DEBUG_LOG.wp-content/debug.log..htaccess.plugins сайт заработал — почти точно виноват плагин..htaccess, PHP и сервер.wp-content/plugins/... — смотрите конкретный плагин.wp-content/themes/... — смотрите тему или дочернюю тему.Примеры строк, которые часто объясняют ошибку 500:
PHP Fatal error — критическая PHP-ошибка.Allowed memory size exhausted — закончилась память.Cannot redeclare — функция объявлена два раза.Call to undefined function — код вызывает функцию, которой нет.Class not found — отсутствует нужный класс.Permission denied — проблема прав доступа.mod_security — запрос заблокирован защитой сервера.Premature end of script headers — сервер оборвал выполнение PHP.Это внутренняя ошибка сервера. Сервер не смог обработать запрос, но не показал точную причину в браузере. В WordPress чаще всего виноваты PHP-ошибка, плагин, тема, .htaccess, память, версия PHP или хостинг.
Сделайте копию сайта, включите debug.log, проверьте error_log хостинга и только потом отключайте плагины, тему или меняйте .htaccess.
Да. Обычно работают через FTP/SFTP, файловый менеджер хостинга, базу данных, WP-CLI и логи. Доступ к админке удобен, но не обязателен для базовой диагностики.
Плагин мог стать несовместимым с темой, другим плагином, версией PHP или WooCommerce. Через FTP можно временно отключить проблемный плагин и проверить debug.log.
Скорее всего, в коде есть синтаксическая ошибка, повтор функции, неправильный hook или вызов несуществующей функции. Нужно отменить последнюю правку через FTP и проверить лог.
Да. Неправильные rewrite rules, редиректы, security-правила или старые настройки кеша могут вызвать 500. Для проверки файл временно переименовывают и создают новый.
Поможет только если ошибка связана с нехваткой памяти. Если причина в PHP fatal error, конфликте плагина, теме или .htaccess, увеличение памяти не решит проблему.
Можно как диагностический шаг, но аккуратно. На WooCommerce-сайте это может временно отключить оплату, доставку, формы, письма и интеграции. Лучше сначала сделать копию и смотреть логи.
Часто это связано с нагрузкой, cron, бэкапами, импортами, нехваткой ресурсов, медленной базой, ботами или периодическими задачами плагинов. Нужно смотреть время ошибки, access log и графики хостинга.
Не всегда. Критическая ошибка WordPress часто связана с PHP fatal error и может сопровождаться 500. Но 500 может быть и серверной проблемой, ошибкой .htaccess, WAF или лимитами хостинга.
Проверяйте плагины, security-настройки, PHP memory limit для админки, admin-ajax.php, REST API, cookies, кеш и error_log. Админка может ломаться отдельно от публичной части сайта.
Если сайт продаёт, принимает заявки, работает на WooCommerce, связан с оплатой, CRM или рекламой, лучше не экспериментировать без копии и логов. Ошибка 500 может быть симптомом более глубокой проблемы.
Ошибка 500 WordPress не говорит точную причину на экране, поэтому исправление нужно начинать с диагностики. Самый безопасный порядок: резервная копия, debug.log, error_log хостинга, проверка .htaccess, отключение плагинов через FTP, проверка темы, памяти PHP, версии PHP, прав файлов, кеша и серверных ограничений.
Не стоит лечить ошибку 500 случайными действиями. Если найти реальный источник сбоя, можно восстановить сайт без лишней переделки и снизить риск повторной поломки после обновлений, отправки форм, работы WooCommerce или изменений на хостинге.
Рекомендуем услугу: срочная помощь WordPress
Об авторе