// Blog

Как исправить ошибку 500 Internal Server Error в WordPress на VPS Linux — CLIQHOST

18 октября 2026 г. · by Alex M.

Как исправить ошибку 500 Internal Server Error в WordPress на VPS Linux — CLIQHOST

Ошибка 500 Internal Server Error — одна из самых распространённых и неприятных проблем, с которой сталкиваются администраторы сайтов на WordPress. Белый экран, пустая страница или общий текст ошибки — всё это симптомы одного типа неполадки. Хорошая новость: в большинстве случаев причину можно найти и устранить без потери данных и переустановки WordPress.

В этом руководстве вы узнаете, как диагностировать и устранить ошибку 500 в WordPress на VPS Linux, шаг за шагом, с конкретными командами и чёткими объяснениями.


Что такое ошибка 500 Internal Server Error?

Код HTTP 500 означает, что сервер столкнулся с непредвиденной ситуацией, которая помешала ему обработать запрос. В отличие от ошибки 404 (страница не найдена), ошибка 500 возникает на стороне сервера, а не клиента. Причины могут быть следующими:

  • повреждённый или неправильно настроенный файл .htaccess
  • несовместимый плагин или тема WordPress
  • превышение лимитов PHP (памяти, времени выполнения)
  • неверные права доступа к файлам или директориям
  • ошибки в конфигурации PHP-FPM или php.ini
  • проблемы с базой данных MySQL/MariaDB
  • конфликты на уровне веб-сервера (Apache или Nginx)

Если у вас есть VPS NVMe или VPS SSD с root-доступом, вы можете просматривать логи сервера напрямую — это ключевой шаг в диагностике.


Шаг 1: Включите режим отладки (WP_DEBUG)

Первое, что нужно сделать — включить отладку WordPress, чтобы увидеть точное сообщение об ошибке.

Подключитесь к VPS через SSH:

ssh root@IP_СЕРВЕРА

Откройте файл wp-config.php:

nano /var/www/html/wp-config.php

Найдите строки, связанные с WP_DEBUG, и замените их (или добавьте, если отсутствуют) следующими:

define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);
@ini_set('display_errors', 0);

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

После сохранения воспроизведите ошибку, затем проверьте лог-файл:

cat /var/www/html/wp-content/debug.log

Этот файл часто сразу указывает на причину проблемы.


Шаг 2: Проверьте логи веб-сервера

Независимо от того, используете вы Apache или Nginx, логи сервера — главный источник информации.

Apache:

tail -n 50 /var/log/apache2/error.log
# или для конкретного сайта:
tail -n 50 /var/log/apache2/example.com-error.log

Nginx:

tail -n 50 /var/log/nginx/error.log
# или:
tail -n 50 /var/log/nginx/example.com.error.log

Логи PHP-FPM:

tail -n 50 /var/log/php8.1-fpm.log

Ищите сообщения: PHP Fatal error, Maximum execution time, Allowed memory size, Permission denied или No such file or directory. Каждое из них указывает на конкретное решение.

Если вам нужна помощь с интерпретацией логов или настройкой сервера, сервис управления серверами CLIQHOST возьмёт на себя весь технический менеджмент.


Шаг 3: Сбросьте файл .htaccess (только Apache)

Повреждённый файл .htaccess — одна из самых частых причин ошибки 500 на Apache. Для проверки временно переименуйте его:

cd /var/www/html
mv .htaccess .htaccess_backup

Откройте сайт в браузере. Если он работает — проблема была в .htaccess. Восстановите его через WordPress:

  1. Зайдите в Настройки → Постоянные ссылки в панели администратора
  2. Нажмите Сохранить изменения (ничего не меняя)

WordPress автоматически перезапишет .htaccess с правильными правилами.

Стандартное содержимое .htaccess для WordPress:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

Шаг 4: Деактивируйте все плагины

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

cd /var/www/html/wp-content
mv plugins plugins_backup
mkdir plugins

Откройте сайт. Если он работает — восстановите папку и активируйте плагины по одному:

rm -rf plugins
mv plugins_backup plugins

Затем активируйте плагины по очереди через панель WordPress и тестируйте после каждого.

Если вы используете хостинг cPanel, плагины можно деактивировать через File Manager без SSH.


Шаг 5: Переключитесь на стандартную тему WordPress

Активная тема — тоже возможная причина ошибки 500, особенно после обновления. Переключитесь через SSH:

cd /var/www/html/wp-content/themes
mv my-theme my-theme_backup

WordPress автоматически перейдёт на стандартную тему (twentytwentyfour). Если стандартная тема отсутствует:

wp theme install twentytwentyfour --activate --path=/var/www/html

Для этой команды требуется установленный WP-CLI.


Шаг 6: Проверьте и увеличьте лимиты PHP

Превышение лимита памяти PHP — распространённая причина, особенно на сайтах с большим количеством плагинов.

Проверьте текущий лимит:

php -i | grep memory_limit

Увеличьте лимит в php.ini:

nano /etc/php/8.1/fpm/php.ini

Измените или добавьте:

memory_limit = 512M
max_execution_time = 300
max_input_time = 300
post_max_size = 64M
upload_max_filesize = 64M

Перезапустите PHP-FPM:

systemctl restart php8.1-fpm

Альтернативно, добавьте в wp-config.php:

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

Если ресурсов вашего VPS не хватает для сайта с большим трафиком, рассмотрите переход на VPS NVMe с бо́льшим объёмом RAM.


Шаг 7: Проверьте права доступа к файлам и директориям

Неверные права доступа могут вызывать фатальные ошибки. Рекомендуемые настройки для WordPress:

  • Директории: 755
  • Файлы: 644
  • wp-config.php: 600

Исправьте права:

find /var/www/html -type d -exec chmod 755 {} \;
find /var/www/html -type f -exec chmod 644 {} \;
chmod 600 /var/www/html/wp-config.php

Проверьте и исправьте владельца файлов:

chown -R www-data:www-data /var/www/html/

Шаг 8: Проверьте базу данных MySQL/MariaDB

Повреждённая база данных или остановленный сервер MySQL могут генерировать ошибку 500.

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

systemctl status mysql
# или:
systemctl status mariadb

Если сервис остановлен:

systemctl start mysql

Восстановите таблицы WordPress:

Добавьте в wp-config.php:

define('WP_ALLOW_REPAIR', true);

Перейдите по адресу: https://example.com/wp-admin/maint/repair.php

После восстановления обязательно удалите добавленную строку из wp-config.php.

Или используйте WP-CLI:

wp db repair --path=/var/www/html
wp db check --path=/var/www/html

Шаг 9: Проверьте конфигурацию PHP-FPM и сокета

При использовании Nginx + PHP-FPM неверно настроенный сокет может вызывать ошибки 500 или 502.

Проверьте наличие сокета:

ls -la /run/php/php8.1-fpm.sock

Проверьте конфигурацию пула:

nano /etc/php/8.1/fpm/pool.d/www.conf

Убедитесь, что listen в блоке Nginx соответствует сокету:

fastcgi_pass unix:/run/php/php8.1-fpm.sock;

Перезапустите оба сервиса:

systemctl restart php8.1-fpm
systemctl restart nginx

Шаг 10: Проверьте SSL-сертификат

В некоторых конфигурациях истёкший или неверно настроенный SSL-сертификат может генерировать ошибку 500, особенно если URL WordPress настроен на https://, а сертификат недействителен.

Проверьте дату истечения:

openssl x509 -enddate -noout -in /etc/letsencrypt/live/example.com/cert.pem

Для профессиональных и управляемых SSL-сертификатов ознакомьтесь с предложением SSL-сертификаты CLIQHOST.


Быстрый чеклист — Ошибка 500 в WordPress

Причина Быстрое решение
Повреждённый .htaccess Переименовать + восстановить через Постоянные ссылки
Несовместимый плагин Деактивировать папку /plugins
Повреждённая тема Переименовать папку темы
Недостаточно памяти PHP Увеличить memory_limit в php.ini
Неверные права доступа chmod 755/644 + chown www-data
Повреждённая база данных Восстановление через wp db repair
PHP-FPM остановлен systemctl restart php8.1-fpm
Истёкший SSL-сертификат Обновить сертификат

Профилактика: как избежать ошибок 500 в будущем

  1. Делайте регулярные резервные копии — перед любым обновлением плагина, темы или ядра WordPress
  2. Тестируйте обновления на staging-сервере — не на продакшене
  3. Следите за логами — настройте автоматические оповещения об ошибках
  4. Обновляйте PHP — PHP 8.1+ значительно стабильнее и быстрее
  5. Выбирайте качественный хостинг — недостаток ресурсов это причина №1 ошибок 500 на нагруженных сайтах

Больше советов по оптимизации и защите сервера вы найдёте в блоге CLIQHOST.


Заключение

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

Если вы предпочитаете доверить управление сервером профессионалам, CLIQHOST предлагает полный сервис администрирования серверов и VPS NVMe, оптимизированные для WordPress, с технической поддержкой 24/7. Свяжитесь с нами — подберём решение под ваши задачи.

SHARE
// what clients say

What Our Clients Say

Real reviews from customers who trust CLIQHOST for performance, reliability and expert technical support.

★★★★★

"We moved our online shop from a foreign host and the difference is night and day — pages load instantly and support replies in minutes, in Romanian."

AM
Andrei M.
eCommerce owner · Chișinău
★★★★★

"Migrated 12 client sites to CLIQHOST. Free migration, zero downtime, and the cPanel setup is exactly what my team needed. Highly recommend."

EV
Elena V.
Web agency · Bălți
★★★★★

"Our NVMe VPS handles traffic spikes without a sweat. Full root, local datacenter, and billing in MDL — everything we wanted from a provider."

DC
Dmitri C.
SaaS founder · Chișinău