500 Internal Server Error WordPress: что значит ошибка и как исправить

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

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

Quick Fix

  • Обновите страницу через Ctrl + F5 и проверьте сайт в режиме инкогнито.
  • Переименуйте файл .htaccess в .htaccess_old.
  • Отключите все плагины через переименование папки wp-content/plugins.
  • Проверьте активную тему, временно переименовав её папку.
  • Увеличьте PHP memory limit до 256M.
  • Проверьте права: папки — 755, файлы — 644.
  • Включите WordPress debug log в wp-config.php.
  • Проверьте error logs в панели хостинга.
  • Если ошибка появилась после обновления, откатите последний плагин, тему или PHP-версию.

Что означает 500 Internal Server Error в WordPress

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

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

Ошибка может выглядеть так:

  • 500 Internal Server Error
  • HTTP Error 500
  • This page isn’t working
  • The website is currently unable to handle this request
  • Internal Server Error
  • белый экран без текста;
  • ошибка только в админке WordPress;
  • ошибка только на одной странице сайта.

Важно: ошибка 500 не всегда означает, что сайт полностью сломан. Часто проблема находится в одном файле, одном плагине или одной настройке сервера.

Основные причины 500 Internal Server Error WordPress

1. Повреждённый файл .htaccess

Это одна из самых частых причин ошибки 500 в WordPress. Файл .htaccess управляет постоянными ссылками, редиректами, правилами безопасности, кэшем и доступом к файлам.

Ошибка может появиться после:

  • изменения постоянных ссылок;
  • установки SSL-плагина;
  • настройки редиректов;
  • установки security-плагина;
  • изменения кэш-плагина;
  • ручного редактирования .htaccess.

2. Конфликт плагинов

Плагин может вызвать 500 ошибку, если он несовместим с текущей версией WordPress, PHP, темой или другим плагином.

Чаще всего проблемы вызывают:

  • плагины кэша;
  • плагины безопасности;
  • SEO-плагины;
  • визуальные конструкторы;
  • плагины редиректов;
  • плагины оптимизации скорости;
  • старые плагины, которые давно не обновлялись.

3. Ошибка в теме WordPress

Тема может вызвать 500 Internal Server Error после обновления, изменения файла functions.php, установки дочерней темы или добавления кастомного PHP-кода.

Даже одна пропущенная скобка или точка с запятой в PHP-коде может сломать сайт.

4. Нехватка PHP memory limit

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

В логах может быть такая ошибка:

Allowed memory size exhausted

5. Неправильные права доступа

Если права на файлы и папки выставлены неправильно, сервер может не прочитать нужный файл или заблокировать выполнение PHP.

Для большинства WordPress-сайтов подходят такие права:

Папки: 755
Файлы: 644
wp-config.php: 600 или 640, если поддерживает хостинг

Права 777 не стоит использовать как постоянное решение. Это небезопасно.

6. Несовместимая версия PHP

Если хостинг переключил PHP на новую версию, старые плагины или тема могут перестать работать. Например, сайт работал на PHP 7.4, а после перехода на PHP 8.2 появилась ошибка 500.

Также бывает обратная ситуация: новый плагин требует более свежую версию PHP, а сайт работает на старой.

7. Повреждённые файлы WordPress

Файлы ядра WordPress могут повредиться после неудачного обновления, сбоя хостинга, неправильной миграции или ручного удаления файлов.

Обычно это касается папок:

  • wp-admin
  • wp-includes

Папку wp-content нельзя удалять без бэкапа, потому что там находятся темы, плагины и медиафайлы.

8. Ошибка в wp-config.php

Файл wp-config.php содержит важные настройки WordPress. Если в нём есть лишний символ, неправильная кавычка, ошибка PHP или неправильная директива, сайт может показать 500 ошибку.

9. Закончилась квота диска

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

Проверьте свободное место в панели хостинга или на VPS командой:

df -h

10. Проблема на стороне сервера

Иногда ошибка 500 вызвана не WordPress, а самим сервером. Например:

  • Apache или Nginx настроен неправильно;
  • PHP-FPM не работает;
  • MySQL перегружен;
  • серверу не хватает RAM;
  • ошибка в настройках хостинга;
  • сработал firewall или security-модуль;
  • превышены лимиты тарифа.

Как исправить 500 Internal Server Error WordPress

1. Проверьте, временная ли это ошибка

Сначала обновите страницу через жёсткое обновление:

Ctrl + F5

На Mac:

Command + Shift + R

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

2. Переименуйте .htaccess

Подключитесь к сайту через файловый менеджер хостинга, FTP/SFTP или SSH.

В корневой папке WordPress найдите файл:

.htaccess

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

.htaccess_old

После этого откройте сайт.

Если сайт заработал, проблема была в .htaccess. Теперь создайте новый стандартный файл.

Для WordPress используйте:

# 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

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

Настройки → Постоянные ссылки → Сохранить изменения

WordPress сам пересоздаст правильные правила.

3. Отключите все плагины

Если .htaccess не помог, отключите плагины.

Откройте папку:

wp-content

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

plugins

в:

plugins_old

Так WordPress отключит все плагины сразу.

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

4. Найдите проблемный плагин

Верните папке старое имя:

plugins

Затем заходите внутрь папки и отключайте плагины по одному, переименовывая их папки.

Например:

plugin-name → plugin-name_old

После каждого изменения проверяйте сайт. Когда сайт начнёт работать, вы нашли проблемный плагин.

Дальше можно:

  • обновить плагин;
  • откатить его на старую версию;
  • заменить аналогом;
  • удалить, если он не нужен;
  • написать в поддержку разработчика.

5. Проверьте тему WordPress

Если плагины не виноваты, проверьте тему.

Откройте папку:

wp-content/themes

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

theme-name → theme-name_old

WordPress попробует переключиться на стандартную тему, если она установлена.

Если стандартной темы нет, загрузите одну из стандартных тем WordPress в папку themes.

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

Откройте файл wp-config.php и добавьте строку перед комментарием That's all, stop editing:

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

Если сайт большой, можно временно поставить:

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

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

7. Включите WordPress debug log

В wp-config.php найдите строку:

define('WP_DEBUG', false);

Замените её на:

define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);

После этого WordPress будет записывать ошибки в файл:

wp-content/debug.log

Откройте этот файл и посмотрите последние строки. Часто там указано, какой плагин, тема или PHP-файл вызывает ошибку 500.

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

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

Пример:

  • если сайт сломался на PHP 8.3, попробуйте PHP 8.2;
  • если старый сайт сломался на PHP 8.2, попробуйте PHP 8.1;
  • если плагин требует новую версию, обновите PHP и сам плагин.

Не стоит долго держать сайт на устаревшей PHP-версии. Используйте это как временный шаг для диагностики.

9. Проверьте права доступа

Если у вас есть SSH-доступ, можно исправить права так:

Для папок:

find /path/to/site -type d -exec chmod 755 {} \;

Для файлов:

find /path/to/site -type f -exec chmod 644 {} \;

Для wp-config.php можно использовать:

chmod 600 wp-config.php

Если сайт перестал читать файл, поставьте:

chmod 640 wp-config.php

На некоторых shared-хостингах может понадобиться 644.

10. Проверьте error logs на хостинге

В панели хостинга найдите раздел:

  • Error Logs;
  • Logs;
  • PHP Error Log;
  • Server Logs;
  • Diagnostics.

На VPS можно посмотреть логи так:

Для Apache:

sudo tail -n 100 /var/log/apache2/error.log

Для Nginx:

sudo tail -n 100 /var/log/nginx/error.log

Для PHP-FPM:

sudo journalctl -xeu php8.2-fpm

Замените php8.2-fpm на вашу версию PHP.

500 Internal Server Error только в админке WordPress

Если сайт открывается, но /wp-admin/ показывает ошибку 500, чаще всего причина в плагине, теме, PHP memory limit или security-настройках.

Проверьте:

  • плагины безопасности;
  • плагины кэша;
  • плагины изменения URL входа;
  • лимит памяти PHP;
  • wp-content/debug.log;
  • права на файлы;
  • ошибки после обновления.

Быстрый тест — отключить все плагины через переименование папки plugins.

500 Internal Server Error только на одной странице

Если ошибка появляется только на одной странице, проблема может быть в контенте, шорткоде, блоке конструктора, шаблоне или PHP-функции.

Проверьте:

  • есть ли на странице shortcode от удалённого плагина;
  • используется ли нестандартный шаблон;
  • есть ли блок Elementor или другого конструктора с ошибкой;
  • нет ли слишком тяжёлого запроса;
  • нет ли ошибки в custom fields;
  • нет ли вставленного PHP/JS-кода.

Попробуйте создать копию страницы и удалить блоки по одному. Так можно найти проблемный элемент.

500 Internal Server Error после обновления плагина

Если ошибка появилась сразу после обновления плагина, отключите именно этот плагин.

Путь:

wp-content/plugins/plugin-name

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

plugin-name_old

Если сайт заработал, проблема в этом плагине.

Возможные решения:

  • откатить плагин на предыдущую версию;
  • обновить WordPress;
  • изменить PHP-версию;
  • заменить плагин;
  • дождаться исправления от разработчика.

500 Internal Server Error после обновления темы

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

Путь:

wp-content/themes/theme-name

Переименуйте:

theme-name_old

Если сайт заработал, проблема в теме или дочерней теме.

Проверьте:

  • functions.php;
  • кастомные шаблоны;
  • дочернюю тему;
  • совместимость с PHP;
  • последние правки кода;
  • ошибки в debug.log.

500 Internal Server Error после миграции WordPress

После переноса сайта ошибка 500 часто связана с .htaccess, PHP-версией, путями, правами или несовместимыми настройками старого хостинга.

Проверьте:

  • .htaccess;
  • PHP-версию;
  • права на файлы и папки;
  • wp-config.php;
  • активные плагины;
  • кэш-плагины;
  • старые absolute paths;
  • error logs на новом хостинге.

Если сайт был перенесён с Apache на Nginx, старые правила .htaccess могут больше не работать, потому что Nginx не использует .htaccess.

Advanced Troubleshooting

Проверьте .user.ini и php.ini

Иногда ошибка 500 появляется после изменения PHP-настроек в файлах:

  • .user.ini
  • php.ini
  • user.ini

Проверьте, нет ли там неправильных директив, лишних символов или параметров, запрещённых хостингом.

Проверьте файл error_log в корне сайта

На некоторых хостингах PHP создаёт файл:

error_log

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

Проверьте ModSecurity

На shared-хостинге ошибка 500 иногда появляется из-за ModSecurity. Он может блокировать запросы, формы, сохранение страниц, REST API или админские действия.

Признаки:

  • ошибка появляется при сохранении записи;
  • ошибка только в админке;
  • ошибка после отправки формы;
  • ошибка появляется не всегда;
  • в логах есть security rule или ModSecurity ID.

В таком случае лучше обратиться в поддержку хостинга и попросить проверить сработавшее правило.

Проверьте PHP-FPM

Если сайт работает через Nginx и PHP-FPM, ошибка может быть в PHP-FPM.

Проверьте статус:

sudo systemctl status php8.2-fpm

Перезапустите:

sudo systemctl restart php8.2-fpm

Если используется другая версия PHP, замените php8.2-fpm на нужную.

Проверьте лимиты хостинга

Ошибка 500 может появляться из-за превышения лимитов:

  • CPU;
  • RAM;
  • PHP workers;
  • IOPS;
  • number of processes;
  • max execution time;
  • memory_limit;
  • disk quota.

Если сайт падает только при высокой нагрузке, проверьте ботов, кэширование и тяжёлые плагины.

Проверьте заражение сайта

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

Проверьте:

  • неизвестные PHP-файлы в wp-content/uploads;
  • подозрительные строки в functions.php;
  • новые админ-аккаунты;
  • изменённый .htaccess;
  • странные cron-задания;
  • неизвестные плагины.

Что нельзя делать при ошибке 500

  • Не удаляйте весь wp-content.
  • Не удаляйте базу данных.
  • Не переустанавливайте WordPress без бэкапа.
  • Не ставьте права 777 на весь сайт.
  • Не меняйте сразу много настроек без проверки.
  • Не оставляйте WP_DEBUG_DISPLAY включённым на рабочем сайте.
  • Не удаляйте тему или плагины, если нет резервной копии.

Как предотвратить 500 Internal Server Error WordPress

  • Делайте бэкап перед обновлением WordPress, темы и плагинов.
  • Не обновляйте сразу все плагины без проверки.
  • Удаляйте старые и неиспользуемые плагины.
  • Используйте совместимую версию PHP.
  • Не вставляйте код в functions.php без теста.
  • Следите за правами файлов и папок.
  • Не держите несколько кэш-плагинов одновременно.
  • Проверяйте .htaccess после настройки редиректов.
  • Следите за свободным местом на хостинге.
  • Периодически проверяйте error logs.

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

Обратитесь в поддержку, если:

  • ошибка появилась внезапно без ваших изменений;
  • вы не можете открыть файловый менеджер или FTP;
  • нет доступа к error logs;
  • после отключения плагинов и темы ошибка остаётся;
  • хостинг блокирует запросы через ModSecurity;
  • ошибка связана с PHP-FPM, Apache или Nginx;
  • сайт превышает лимиты тарифа;
  • нет свежего бэкапа, а сайт важен для бизнеса.

Перед обращением подготовьте домен, скрин ошибки, время появления проблемы, список последних изменений и последние строки из error log, если они доступны.

FAQ

Что значит 500 Internal Server Error WordPress?

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

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

Сначала переименуйте .htaccess, затем отключите все плагины через папку wp-content/plugins. Если сайт заработал, возвращайте правила и плагины по одному, чтобы найти причину.

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

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

Может ли .htaccess вызвать 500 Internal Server Error?

Да. Неправильное правило, запрещённая директива, конфликт редиректов или ошибка синтаксиса в .htaccess часто вызывают ошибку 500.

Что делать, если админка WordPress тоже не открывается?

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

Вывод

500 Internal Server Error WordPress — это общая ошибка, но у неё почти всегда есть конкретная причина. Не нужно сразу переустанавливать сайт. Начните с безопасных шагов: проверьте .htaccess, отключите плагины, проверьте тему, увеличьте PHP memory limit и откройте error logs.

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

«`