Ошибка 500 – это сервер, который разводит руками: «что-то пошло не так, но говорить что именно не буду». Для владельца сайта это самая раздражающая ошибка, потому что она ничего не объясняет. Хорошо, что причин у неё немного, и их можно перебрать по порядку за полчаса.
Шаг 1: Идём в журнал, а не гадаем
Откройте в панели хостинга журнал ошибок сайта (error log). Найдите запись рядом со временем, когда сайт упал. Там почти всегда есть файл и причина. Без журнала диагностика превращается в лотерею: отключаем всё подряд и надеемся.
Что искать в записях:
- PHP Fatal error – сбой в коде; название файла укажет на плагин или тему;
- Premature end of script headers – процесс PHP аварийно завершился;
- Permission denied – неверные права на файлы или папки;
- записи про FastCGI или сокет – проблема с обработчиком PHP на сервере.
Шаг 2: Проверьте .htaccess
На хостингах с Apache повреждённый файл .htaccess – частая причина. Переименуйте его в корне сайта и откройте сайт. Если он ожил, зайдите в админку и заново сохраните «Постоянные ссылки»: WordPress создаст чистый файл. На nginx вместо .htaccess смотрят конфигурацию сайта, её правит хостинг.
Шаг 3: Плагины и тема
Переименуйте папку wp-content/plugins, потом тему. Если ошибка ушла, включайте компоненты по одному. Подробный порядок описан в статье «Критическая ошибка WordPress».
Шаг 4: Память и лимиты
Увеличьте WP_MEMORY_LIMIT до 256M и проверьте в панели хостинга memory_limit, max_execution_time и лимит процессов. Если сайт упирается в потолок тарифа, ошибки будут повторяться.
Шаг 5: Права на файлы
Обычно папки имеют права 755, файлы 644, а wp-config.php строже. Слишком широкие или слишком узкие права дают 500.
Шаг 6: Версия PHP
Смена PHP на хостинге иногда ломает старые плагины. Верните предыдущую версию, чтобы сайт ожил, но потом всё равно обновите плагины: старые версии PHP не поддерживаются.
Если 500 только в одном месте
Если ошибка появляется только при загрузке картинок, проверьте upload_max_filesize, post_max_size, memory_limit и права на папку uploads. Если только в админке, чаще виноват плагин с тяжёлыми запросами или нехватка памяти на страницах настроек. Если только на некоторых страницах сайта, ищите в журнале запросы к этим адресам: это может быть форма или корзина.
Чем 500 отличается от 502 и 503
500 – общая ошибка приложения. 502 и 503 обычно означают, что обработчик PHP или сервер недоступны или перегружены. Для них причина чаще на стороне хостинга.
Симптом, причина, действие
| Симптом | Вероятная причина | Что делать |
|---|---|---|
| 500 сразу после правки .htaccess | синтаксическая ошибка в файле | вернуть прежний файл или переименовать |
| 500 после установки плагина | конфликт или нехватка памяти | отключить плагин через FTP |
| 500 при загрузке больших файлов | лимиты размера и времени | увеличить лимиты, проверить права на uploads |
| 500 после смены версии PHP | несовместимый код | вернуть версию, обновить компоненты |
| 500 появляется и пропадает | нагрузка, лимиты хостинга | кэш, тариф, защита от ботов |
Apache или nginx: где искать
На Apache важно состояние .htaccess и журнал ошибок сайта. На nginx файла .htaccess нет, а часть настроек лежит в конфигурации, которую правит хостинг. Узнать, что у вас, можно в панели хостинга или в ответах сервера. От этого зависит, что именно вы проверяете первым.
Влияет ли это на поиск
Одиночный сбой – нет. Если ошибка держится часами или повторяется, поисковики снижают доверие и могут временно убрать страницы. Поэтому лучше настроить мониторинг доступности, чтобы узнавать о сбое раньше клиентов.
Если сайт приносит заявки и ждать некогда, услуга «Правки и ремонт сайта на WordPress» решает такое в день обращения от 15 000 ₽.