Ошибка 500 WordPress: причины и способы исправления

WordPress услуги
Нужна помощь с сайтом?
Исправим, настроим или улучшим сайт. Оставьте заявку — подскажем решение.
Оставить заявку
Автор:vkuzyomko

Ошибка 500 WordPress: причины и способы исправления

Краткий ответ: ошибка 500 WordPress означает внутренний сбой на сервере. Сайт не может обработать запрос, но браузер не показывает точную причину. Чаще всего проблема связана с плагином, темой, файлом .htaccess, PHP-ошибкой, нехваткой памяти, конфликтом после обновления или настройками хостинга.

Если сайт показывает 500, не нужно сразу удалять плагины, менять тему или переустанавливать WordPress. Сначала нужно найти точную ошибку в логах, сохранить копию сайта и только потом исправлять причину.

Если сайт уже не открывается или не работает админка WordPress, напишите мне. Я могу проверить логи, найти причину ошибки 500 и восстановить сайт без лишнего риска для данных.

Что означает ошибка 500 в WordPress

Ошибка 500 Internal Server Error — это общий ответ сервера. Он означает, что запрос дошёл до сайта, но сервер не смог его выполнить из-за внутренней проблемы.

В WordPress такая ошибка редко говорит о точной причине сразу. Она может появиться из-за плагина, темы, PHP-кода, файла .htaccess, базы данных, версии PHP, кеша или ограничений хостинга.

Часто ошибка 500 появляется после:

  • обновления WordPress, плагина или темы;
  • установки нового плагина;
  • изменения кода в functions.php;
  • ошибки в файле .htaccess;
  • смены версии PHP на хостинге;
  • нехватки PHP-памяти;
  • конфликта кеш-плагина или CDN;
  • неправильных прав доступа к файлам;
  • ошибки в wp-config.php;
  • повреждения файлов WordPress;
  • сбоя базы данных;
  • блокировки со стороны ModSecurity или WAF.

Если вместо ошибки 500 сайт показывает просто белый экран, посмотрите также материал про белый экран WordPress. Причины и порядок диагностики там часто похожие.

Что проверить первым

Ошибка 500 опасна тем, что в браузере обычно нет подробностей. Но почти всегда причина есть в логах хостинга или в файле debug.log.

Безопасный порядок проверки

  • Не удаляйте файлы и плагины сразу.
  • Сделайте резервную копию файлов и базы данных.
  • Проверьте, открывается ли админка WordPress.
  • Проверьте error_log в панели хостинга.
  • Включите debug.log в wp-config.php.
  • Проверьте файл wp-content/debug.log.
  • Временно отключите плагины через FTP.
  • Проверьте активную тему.
  • Проверьте файл .htaccess.
  • Проверьте версию PHP и лимит памяти.
  • Очистите кеш сайта, сервера и CDN.

Что искать в логах

  • PHP Fatal error: критическая ошибка PHP-кода;
  • PHP Parse error: синтаксическая ошибка после ручной правки файла;
  • Allowed memory size exhausted: сайту не хватает PHP-памяти;
  • Call to undefined function: вызывается функция, которой нет;
  • Cannot redeclare function: функция объявлена повторно;
  • Failed opening required: WordPress не может найти нужный файл;
  • Permission denied: проблема с правами доступа;
  • ModSecurity: запрос заблокирован правилами безопасности;
  • Premature end of script headers: PHP-скрипт завершился некорректно.

Что я могу сделать при ошибке 500 WordPress

Если у вас нет времени разбираться в логах, FTP, PHP и .htaccess, я могу взять диагностику на себя.

  • Проверить error_log и debug.log.
  • Найти конкретный плагин, тему или файл, который вызывает ошибку.
  • Восстановить доступ к сайту и админке.
  • Исправить ошибку в .htaccess, wp-config.php, functions.php или кастомном коде.
  • Проверить конфликт после обновления WordPress, темы или плагина.
  • Подобрать безопасную версию PHP.
  • Убрать повторение ошибки после следующего обновления.
  • Проверить, не связана ли ошибка с вирусом или вредоносным кодом.

Для проверки обычно нужно: доступ к хостингу или FTP, доступ к WordPress-админке если она открывается, описание когда появилась ошибка и какие действия были перед этим.

Нужно быстро восстановить сайт?

Если WordPress показывает ошибку 500 и вы не хотите рисковать файлами, базой данных и заказами, можно оставить заявку. Я проверю логи, найду причину и предложу безопасное решение.

Оставить заявку

Как исправить ошибку 500 WordPress

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

1. Проверьте файл .htaccess

Файл .htaccess находится в корне сайта. Он отвечает за постоянные ссылки, редиректы, правила доступа и часть серверной логики. Если в нём ошибка, сайт может полностью показать 500.

Через FTP или файловый менеджер хостинга откройте корень сайта и найдите файл:

/.htaccess

Переименуйте его временно:

.htaccess_old

После этого откройте сайт. Если ошибка исчезла, причина была в .htaccess. Потом зайдите в админку WordPress → Настройки → Постоянные ссылки → Сохранить. WordPress создаст новый файл правил.

2. Отключите плагины через FTP

Если админка не открывается, зайдите в папку:

/wp-content/plugins/

Переименуйте папку plugins:

plugins_disabled

Если сайт заработал, проблема в одном из плагинов. Верните папке старое имя:

plugins

Дальше отключайте плагины по одному, переименовывая папки внутри plugins. Так можно найти конкретный плагин, который вызывает ошибку 500.

3. Проверьте активную тему

Если плагины не виноваты, проверьте активную тему. Ошибка может быть в functions.php, шаблоне темы, shortcode, подключении файла или несовместимости с новой версией PHP.

Путь к темам:

/wp-content/themes/

Переименуйте папку активной темы:

active-theme_disabled

WordPress попробует переключиться на стандартную тему, если она установлена. Лучше всегда держать одну стандартную тему WordPress в папке themes для аварийной проверки.

4. Увеличьте PHP memory limit

Если в логе есть ошибка “Allowed memory size exhausted”, сайту не хватает PHP-памяти. В таком случае можно временно увеличить лимит памяти в wp-config.php.

define( 'WP_MEMORY_LIMIT', '256M' );
define( 'WP_MAX_MEMORY_LIMIT', '512M' );

Если хостинг ограничивает память на уровне сервера, настройка в wp-config.php может не помочь. Тогда нужно менять лимит в панели хостинга или обращаться в поддержку.

5. Проверьте версию PHP

Ошибка 500 часто появляется после смены PHP 7.4 на PHP 8.x или после обновления хостинга. Старый плагин, тема или кастомный код может использовать функции, которые больше не работают.

Что сделать:

  • посмотреть текущую версию PHP в панели хостинга;
  • временно вернуть предыдущую версию PHP;
  • проверить debug.log;
  • обновить проблемный плагин или тему;
  • исправить устаревший PHP-код.

6. Проверьте права файлов

Неправильные права могут вызывать ошибку 500, особенно после переноса сайта, распаковки архива или ручного копирования файлов.

Что проверить Частое значение Комментарий
Папки 755 Обычно достаточно для чтения и выполнения каталогов.
Файлы 644 Обычно подходит для PHP, CSS, JS и изображений.
wp-config.php 600 или 640 Зависит от настроек сервера.

Не ставьте права 777 на весь сайт. Это небезопасно и может создать новые проблемы.

7. Очистите кеш

Если причина уже исправлена, но сайт всё равно показывает 500, проверьте кеш.

  • кеш WordPress-плагина;
  • серверный кеш хостинга;
  • OPcache;
  • Cloudflare или другой CDN;
  • кеш браузера.

8. Проверьте ограничения безопасности

Иногда сайт работает нормально, но отдельная страница, AJAX-запрос, форма или админское действие получает 500. Причиной может быть ModSecurity, WAF, security-плагин или правило хостинга.

Признаки:

  • 500 появляется только при сохранении записи;
  • 500 появляется при отправке формы;
  • 500 появляется только в Elementor, WPBakery или Gutenberg;
  • 500 появляется при загрузке файла;
  • 500 появляется только у администратора;
  • в логах есть упоминание security rule, mod_security, WAF или forbidden pattern.

Примеры задач, с которыми можно обратиться

  • Сайт WordPress показывает 500 после обновления плагина.
  • Не открывается админка WordPress.
  • Ошибка 500 появляется только на одной странице.
  • Ошибка 500 появляется при сохранении записи.
  • Ошибка 500 появляется при отправке формы.
  • WooCommerce показывает 500 на корзине или checkout.
  • После смены PHP сайт перестал открываться.
  • После переноса сайта на другой хостинг появилась ошибка 500.
  • В логах есть PHP Fatal error, но непонятно, что делать.
  • Сайт периодически падает и потом снова открывается.

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

Код для диагностики ошибки 500

Важно: перед изменениями сделайте копию wp-config.php, .htaccess, файлов сайта и базы данных. Не оставляйте публичный вывод ошибок включённым на рабочем сайте.

Включить debug.log в wp-config.php

Куда вставлять: в файл 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-content/debug.log

После исправления ошибки отключите режим отладки:

define( 'WP_DEBUG', false );

Стандартный .htaccess для WordPress

Куда вставлять: файл .htaccess в корне сайта. Перед заменой сохраните старый файл.

# 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

Отключить все плагины через WP-CLI

Куда выполнять: SSH в корне сайта.

wp plugin deactivate --all

Потом включайте плагины по одному:

wp plugin activate nazvanie-plagina

Проверить активную тему через WP-CLI

Куда выполнять: SSH в корне сайта.

wp theme list

Переключиться на стандартную тему:

wp theme activate twentytwentyfive

Проверить файл wp-config.php на синтаксис

Куда выполнять: SSH на сервере.

php -l wp-config.php

Если команда покажет syntax error, нужно исправить строку, которую она укажет.

Когда нужно обращаться к специалисту

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

  • Сайт приносит заявки или продажи.
  • На сайте есть WooCommerce-заказы.
  • Ошибка появилась после обновления, но непонятно какого именно.
  • Не открывается админка WordPress.
  • В логах есть PHP Fatal error.
  • Ошибка 500 появляется при оплате, оформлении заказа или отправке формы.
  • Есть подозрение на взлом.
  • Нет свежего backup.
  • Сайт уже пытались чинить, но стало хуже.

Главная задача — не просто убрать ошибку 500, а понять, почему она появилась. Иначе сайт может снова упасть после следующего обновления, нагрузки или действия администратора.

Частые проблемы и что они означают

Ошибка 500 на всём сайте

Возможная причина: .htaccess, критическая PHP-ошибка, плагин, тема, версия PHP, memory limit или серверный сбой.

Что делать: проверить error_log, включить debug.log, временно переименовать .htaccess, отключить плагины, проверить тему и PHP.

Ошибка 500 только в админке

Возможная причина: админский плагин, dashboard widget, конфликт редактора, нехватка памяти или security-плагин.

Что делать: отключить плагины через FTP, проверить debug.log, увеличить memory limit, проверить cookies и кеш браузера.

Ошибка 500 после обновления плагина

Возможная причина: новая версия плагина конфликтует с темой, PHP или другим плагином.

Что делать: переименовать папку плагина, вернуть сайт, проверить логи, откатить плагин или заменить конфликтующий код.

Ошибка 500 после изменения .htaccess

Возможная причина: неправильный RewriteRule, конфликт редиректов, ошибка синтаксиса, правило кеша или безопасности.

Что делать: переименовать .htaccess, создать стандартный файл WordPress, затем добавлять правила по одному.

Ошибка 500 при сохранении страницы

Возможная причина: ModSecurity, REST API, Gutenberg, конструктор страниц, security-плагин или PHP-ошибка в метабоксах.

Что делать: открыть Network в браузере, найти запрос с 500, проверить error_log и debug.log.

Ошибка 500 при загрузке изображения

Возможная причина: права папки uploads, лимит размера файла, нехватка памяти, проблема ImageMagick/GD или блокировка сервера.

Что делать: проверить wp-content/uploads, права файлов, PHP upload_max_filesize, post_max_size, memory_limit и логи сервера.

Ошибка 500 появляется периодически

Возможная причина: cron, backup, импорт, перегрузка CPU/RAM, нехватка места, долгий SQL-запрос или задачи WooCommerce.

Что делать: сверить время ошибки с логами, проверить cron, Action Scheduler, нагрузку сервера и свободное место на диске.

Внутренние ссылки по теме

FAQ

Что такое ошибка 500 WordPress?

Это внутренняя ошибка сервера. WordPress или серверный PHP-код не смог обработать запрос. Браузер видит общий код 500, но точная причина обычно находится в логах.

Ошибка 500 — это проблема WordPress или хостинга?

Может быть и то, и другое. Часто причина в плагине, теме, .htaccess или PHP-коде. Но также возможны проблемы хостинга: память, права, серверные правила, база данных, PHP-FPM или ModSecurity.

Как исправить ошибку 500, если не открывается админка?

Используйте FTP, файловый менеджер хостинга или SSH. Через них можно переименовать папку plugins, проверить тему, восстановить .htaccess и включить debug.log.

Почему ошибка 500 появилась после обновления?

Обновление могло вызвать конфликт плагина, темы, PHP-версии или кастомного кода. Нужно смотреть debug.log и отключать последние обновлённые компоненты.

Можно ли просто восстановить сайт из backup?

Можно, если сайт нужно срочно вернуть. Но после восстановления всё равно нужно найти причину, иначе ошибка может повториться при следующем обновлении.

Почему debug.log не создаётся?

Возможные причины: код вставлен не туда, нет прав на запись в wp-content, ошибка происходит до загрузки WordPress или хостинг пишет ошибки только в серверный error_log.

Может ли .htaccess вызвать ошибку 500?

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

Может ли кеш вызвать ошибку 500?

Да. Особенно если кеш-плагин меняет .htaccess, объединяет скрипты, включает агрессивный page cache или конфликтует с серверным кешем.

Что делать, если ошибка 500 только на одной странице?

Проверьте shortcode, шаблон страницы, блоки конструктора, PHP-код, AJAX-запросы, REST API и плагины, которые работают только на этой странице.

Сколько стоит исправить ошибку 500 WordPress?

Стоимость зависит от причины. Иногда достаточно найти конфликтный плагин или восстановить .htaccess. В более сложных случаях нужно исправлять PHP-код, конфликт темы, WooCommerce, базу данных или последствия взлома.

Нужна помощь с ошибкой 500 WordPress?

Если WordPress показывает ошибку 500, лучше не чинить сайт вслепую. Важно найти точную причину, восстановить доступ и убрать проблему так, чтобы она не повторилась после обновлений.

Я могу проверить сайт, найти ошибку в логах, восстановить работу WordPress и объяснить, что именно сломалось.

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

Напишите мне через страницу контактов и укажите, когда появилась ошибка 500: после обновления, переноса, установки плагина, изменения PHP или без видимой причины.

Вывод

Ошибка 500 WordPress почти всегда решается, если не действовать наугад. Сначала нужно сохранить копию сайта, затем проверить логи, .htaccess, плагины, тему, PHP, память, права файлов и кеш.

Самый быстрый путь к восстановлению — найти точную ошибку в debug.log или error_log. Самый опасный путь — удалять плагины, менять файлы ядра и чистить базу без backup.

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

Об авторе

vkuzyomko administrator