Сообщение об ошибке сервера 500 на стороне клиента или в панели администрирования может стать источником серьезных проблем и причиной потери посетителей. Устранить внутреннюю ошибку сервера HTTP 500 особенно сложно, потому что причины возникновения подобной неполадки могут быть самыми разными.
Формат сообщения о внутренней ошибке сервера 500 не предполагает никаких пояснений о возможном источнике проблемы, и на поиск причины возникновения неполадки могут уйти часы терпеливой работы. В это время сайт теряет посетителей и возможные продажи, страдает репутация компании.
Если на вашем сайте появилось сообщение о внутренней ошибке сервера HTTP 500, понадобятся все возможные способы устранения возникшей проблемы, которые рассмотрены в этой статье. Надеюсь, это руководство поможет вернуть сайт в рабочее состояние в кратчайшие сроки.
- Краткая справка: внутренняя ошибка сервера 500 в WordPress
- Создайте резервную копию сайта
- Перезагрузите страницу
- Проверьте журнал сервера
- Очистите кэш браузера
- Проверьте доступность панели администратора
- Отключите тему оформления или плагин, вызывающие ошибку
- Проверьте файл .htaccess
- Увеличьте лимит памяти для PHP
- Проверьте права доступа
- Переустановите WordPress
- Обратитесь в техподдержку
- Обратитесь к специалисту по отладке
- Заключение
Подобное сообщение уведомляет пользователей о том, что неполадка в работе WordPress-сайта возникла на стороне сервера. В браузерах посетителей сайт не отображается. Эта ошибка особенно опасна тем, что может помешать входу в панель администрирования.
Вопреки распространенному мнению, подобная ошибка не связана с неполадками в работе сервера. Она указывает на проблему с корневым каталогом WordPress-сайта. Это означает, что для обнаружения истинной причины возникшей проблемы понадобится немало проб и ошибок. В зависимости от используемого браузера, сообщение об ошибке выглядит по-разному:
- 500 internal server error (500 внутренняя ошибка сервера);
- Internal server error (внутренняя ошибка сервера);
- Error 500 (ошибка 500);
- HTTP error 500 (HTTP ошибка 500);
- HTTP error 500-internal server error (HTTP ошибка 500 – внутренняя ошибка сервера);
- Temporary error (500) (временная ошибка 500);
- Error code: 500 (код ошибки: 500).
Независимо от формата сообщения, ошибка 500 возникшая на WordPress, негативно повлияет на индексирование в поисковиках, репутацию, трафик, и, конечно же – продажи. Ниже приведена инструкция с перечнем наиболее эффективных методов решения проблемы.
До начала каких-либо действий по поиску причин возникновения ошибки 500 следует провести резервное копирование сайта, если бекапа у вас нет или он уже устарел. Процесс решения подобной проблемы может вызвать серьезные изменения в корневом каталоге, где хранятся все файлы WordPress. При наличии резервной копии сайта можно не опасаться любых изменений. Используйте плагин для автоматического создания резервной копии, затем сохраните бекап на внешнем носителе или в облачном хранилище.
Это самое первое, что стоит сделать – возможно, серверу просто понадобилось очистить кэш или удалить временные файлы. Внутренние ошибки сервера часто возникают после обновления сайта, активации новой темы, добавления плагинов. Сервер может быть перегружен, и сообщение об ошибке просто исчезнет после перезагрузки сайта. Если такое случается часто – это повод подыскать более надежный хостинг для WordPress.
Также стоит проверить работоспособность сайта с помощью сервиса downforeveryoneorjustforme.com – он покажет, если интернет-ресурс полностью недоступен всем посетителям, либо проблема находится на вашей стороне.
Содержимое лога сервера может пролить свет на причины возникновения проблемы. Журналы сервера предоставляют ценную информацию, и помогут выяснить многие причины возникновения неполадки. Среди возможных причин может оказаться установка некорректной темы оформления, плагина; ошибки при установлении соединения с базой данных.
При ошибках, связанных с базами данных, браузер обычно показывает пустую страницу, которую иногда называют «белым экраном смерти». Вследствие отсутствия соединения с базой на экране не будет никаких данных. Эта неполадка не только уничтожает клиентскую часть сайта, но и лишает администратора доступа в панель управления.
Основные причины подобной проблемы следующие:
- Поврежденный файл базы данных WordPress.
- Повреждение файлов движка WordPress злоумышленниками или вирусами.
- Перегрузка базы данных запросами при большом объеме трафика – такое чаще всего происходит на общих хостингах.
Для решения возникшей проблемы, прежде всего, проверьте корректность параметров конфигурации базы данных, или восстановите базу данных из резервной копии. WordPress также предоставляет встроенный метод исправления нерабочей базы данных следующей командой:
Define(‘WP_ALLOW_REPAIR’, true);
Очистка кэша улучшает производительность браузера и решает многие проблемы с неправильной загрузкой сайтов. Существует множество эффективных и бесплатных утилит для полной очистки кэша.
Попробуйте зайти в панель управления по стандартной ссылке. Если попытка не удалась, сообщение о внутренней ошибке сервера 500 может указывать на проблему с недавно установленными темами оформления и плагинами.
Если вам не удается войти в панель администрирования WordPress для отключения некорректной темы оформления или плагина, придется действовать обходным путем. Способ прост, хотя и займет некоторое время. Понадобится FTP-клиент для прямого доступа к файлам сайт. Скачайте, например, FileZilla, введите в параметрах соединения адрес сайта, логин и пароль, подключитесь к серверу – файлы вашего сайта будут в окне справа.
Найдите папку под названием plugins и переименуйте ее в plugins_deactivate. Все плагины будут отключены. Перезагрузите сайт – если ошибка исчезла, значит, причина была в плагине. Теперь вы можете войти в панель администрирования. Войдите и начните активировать плагины по одному. Перезагружайте сайт после активации каждого плагина – так вы обнаружите проблемный. Удалите его, найдите ему замену или уведомите разработчика о проблеме, с которой вы столкнулись. Не забудьте вернуться в FTP-клиент и переименовать директорию обратно, чтобы исправные плагины стали активными.
Если окажется, что ошибку вызывают не плагины, проделайте эти же самые шаги, последовательно проверяя все темы оформления в папке themes. Удалите проблемную тему оформления и перезагрузите сайт.
Установка новой темы оформления или плагина могут вызвать изменения в файле .htaccess, что также может стать причиной сообщения о внутренней ошибке сервера. Эту проблему легко решить с помощью FTP-клиента.
Найдите файл .htaccess, кликните по нему правой кнопкой мыши и переименуйте в .htaccess_old. Перезагрузите файл – если сообщение об ошибке исчезло, значит, проблема действительно была связана с файлом .htaccess. Войдите в панель администрирования, выберите раздел «Постоянные ссылки» в меню «Настройки», затем нажмите кнопку «Сохранить изменения». Эта процедура восстановит оригинальный файл .htaccess и избавит вас от ошибки 500.
Если ваш WordPress-сайт использует множество скриптов, перегружающих доступный объем памяти, это также может стать причиной возникновения ошибки 500. Объем памяти регулируется настройками хостинга и движком WordPress. Увеличить объем памяти для PHP можно несколькими способами.
- Изменить параметры в файле wp-config.php. Зайдите в папку сайта с помощью FTP-клиента, найдите файл wp-config.php, кликните по нему правой кнопкой мыши и выберите в контекстном меню пункт «Просмотр/Редактирование». В качестве редактора по умолчанию можно использовать «Блокнот». Перед строкой «Happy Blogging» добавьте следующий фрагмент кода:
define(‘WP_MEMORY_LIMIT’,’64’);
Сохраните отредактированный в «Блокноте» файл на своем жестком диске, найдите его в левом окне FTP-клиента, кликните по нему правой кнопкой мыши и выберите в контекстном меню пункт «Загрузить». Если после перезагрузки сайта ошибка 500 исчезла – проблема была в доступном объеме памяти.
- Отредактировать файл php.ini. Чтобы найти этот файл, активируйте опцию «Показывать скрытые файлы»; файл php.ini расположен в подкаталоге wp-admin корневой директории. Откройте файл php.ini, найдите строку, начинающуюся с «memory_limit». Если указанное значение составляет 64 Мб и менее, замените его новым параметром:
Если вам не удалось найти файл php.ini, создайте его самостоятельно с помощью программы «Блокнот». Вставьте в созданный файл приведенный выше код и загрузите его на хостинг, в папку wp-admin.
- Изменить файл .htaccess. С помощью FTP-клиента найдите файл на хостинге и добавьте в него следующую строку:
php_value memory_limit 256M
Это увеличит лимит памяти до 256 Мб. Если вы не смогли найти файл .htaccess – активируйте опцию «Показывать скрытые файлы» или создайте подобный файл самостоятельно, после чего загрузите его в папку wp-admin.
Чтобы избежать повторного появления ошибки 500, придется выяснить, какой именно компонент сайта перегружает память. Это может быть некорректно написанный плагин или тема оформления. Можно обратиться за помощью в техподдержку хостинга – специалисты смогут выявить проблемный компонент с помощью журнала сервера.
В соответствии с правилами безопасности WordPress, протокол назначения прав доступа выглядит следующим образом:
- Все директории должны иметь права 755 или 750.
- Для файлов назначают права 644 или 640, кроме файла wp-config.php, который должен иметь права 400 или 440 с целью обеспечения защиты от несанкционированного доступа.
- Ни в коем случае не назначайте права 777 для директорий.
Если права доступа имеют какие-либо другие параметры, возможно появление ошибки 500. Параметры можно проверить с помощью FTP-клиента – они указаны в «Разрешениях». Если вы обнаружите файл или папку с правами доступа, отличающимися от регламентированных – кликните правой кнопкой и измените соответствующий параметр на правильный.
Системные файлы могут повреждаться со временем, в таком случае понадобится переустановка WordPress. Такие повреждения случаются редко, но если все рассмотренные выше методы не помогли, это единственный оставшийся вариант. Переустановка ничем не отличается от первоначальной установки WordPress – скачайте свежий установочный файл с www.wordpress.org и установите WordPress на свой хостинг.
Установочные файлы находятся в папке WordPress. Подключитесь к серверу с помощью FTP-клиента, найдите папки wp-admin и wp-includes, начните загрузку файлов. Когда появится запрос о действиях с существующими файлами, выберите «Переписать». Эта операция заменит все старые файлы в директориях wp-admin и wp-includes новыми. Если после перезагрузки сайта все заработает правильно – проблема была в поврежденных файлах WordPress.
Если все приведенные выше способы не решили проблему, обратитесь в техподдержку хостинга. При выборе надежного хостинга для WordPress всегда важно учитывать наличие в штате специалистов, имеющих опыт в решении проблем с внутренней ошибкой сервера 500. Специалисты исправят подобную ошибку самостоятельно или проведут владельца сайта шаг за шагом через все этапы, необходимые для решения проблемы.
WordPress включает в себя инструмент для тестирования и отладки. Он пригодится, если источник возникшей проблемы остается неясным. В ходе отладки в файл wp-config.php вставляют фрагменты кода, который поможет определить причины неполадок. Результаты тестов записываются в файл, расположенный в корневом каталоге. Для интерпретации и последующей настройки лучше обратиться к опытному профессионалу: новичку сложно отличить незначительную ошибку от серьезной. Кроме того, в процессе тестирования фрагменты кода могут быть видны посетителям сайта.
Внутренняя ошибка сервера 500 досадна – особенно потому, что причины ее появления часто неясны, а единственного простого решения не существует. Приведенные в этой статье методы не требуют навыков программирования, но в большинстве случаев помогут решить возникшую проблему.
Если сайт расположен на бюджетном общем хостинге, лучше сменить тарифный план или выбрать хостинг-провайдера, который возьмет на себя обязательства по обеспечению стабильной работы вашего интернет-ресурса.
Мар 15, 2023
Elena B.
7хв. читання
Столкнулись с ошибкой 500 Internal Server Error в WordPress? Ну что же, вы не одни! Ошибка 500 Internal Server Error — одна из самых распространённых ошибок с которой сталкиваются пользователи WordPress. Среди возможных причин появления ошибки: повреждённые файлы .htaccess, неправильно установленные права, задержки скрипта, неправильная версия PHP или неудачное обновление WordPress.
Однако выявить истинную причину не так просто, как, например, в случае ошибки 404, которую могут вызвать либо неработающие постоянные ссылки, либо изменённые URL-адреса страниц.
Вот краткое руководство по исправлению ошибки 500 в WordPress с помощью 9 различных способов. Давайте не будем терять время и начнём данное руководство по WordPress.
Обратите внимание, что Hostinger предлагает специальный оптимизированный для WordPress хостинг. Воспользуйтесь предложением и получите WordPress хостинг со скидкой до 81%!
К предложению
Что вам понадобится
Перед тем, как вы начнёте это руководство, вам понадобится следующее:
- Доступ к панели управления вашим хостингом
- Доступ к панели управления WordPress
ВАЖНО! Безопасность прежде всего. Перед началом данного руководства, мы рекомендуем произвести резервное копирование вашего сайта для предотвращения потери данных.
Способ 1 — Ошибка 500 в WordPress из-за плагинов или тем
В большинстве случаев, ошибка 500 Internal Server Error возникает из-за установки или обновления плагинов или тем. Если вы уже знаете какой из плагинов мог вызвать данную проблему, вы уже на пол пути к её решению.
Способ 1.1 — Ошибка 500 в WordPress из-за обновления или установки плагина
Если страница перестала работать после установки или обновления плагина, вы можете починить её, просто отключив или удалив плагин. В зависимости от ситуации, существует два пути для достижения цели.
Отключение плагинов через панель управления WordPress
Если вы можете войти в вашу панель управления WordPress, следуйте данным этапам:
- Войдите в вашу панель управления WordPress.
- Нажмите на Плагины → Установленные в левом меню навигации.
- Отключите проблемный плагин.
- Обновите сайт в браузере, чтобы проверить решена ли проблема.
- Если нет, отключите другой плагин и повторяйте данный процесс, пока все плагины не будут отключены (или сайт не заработает).
- Как только вы найдёте плагин, ответственный за появление ошибки, попробуйте переустановить его заново. Вы также можете поискать другие плагины на его замену или связаться с разработчиками плагина для уточнения информации о его работе на вашем WordPress.
Отключение плагинов WordPress через Файловый Менеджер или FTP
Существуют ситуации, когда ошибка не позволяет получить доступ к панели управления WordPress. В этом случае, вам придётся отключить или удалить плагин с помощью Файлового Менеджера в панели управления вашим хостингом или FTP-клиентом вроде FileZilla.
- Пройдите в корневой каталог вашего WordPress и войдите в папку wp-content/plugins.
- Найдите проблемный плагин и переименуйте его для отключения. К примеру, вы можете добавить .отключён в конец файла, чтобы не забыть об этом плагине. Если вы хотите удалить его полностью, просто удалите папку с плагином.
- После этого, обновите ваш сайт. В случае, если проблема остаётся, произведите данные действия для оставшихся плагинов до их полного отключения (или пока ваш сайт не заработает).
- Как только вы найдёте сломанный плагин, вы можете попытаться переустановить его, найти замену или связаться с разработчиками плагина для получения консультации.
Способ 1.2 — Ошибка 500 в WordPress из-за установки или обновления темы
Если ваш сайт перестал работать после установки или обновления темы, вы можете решить проблему изменив тему вашего сайта. Для этого существует два пути:
Изменение темы с помощью панели управления WordPress
Если вы можете получить доступ к вашей панели управления, вот что вы должны предпринять:
- Перейдите в раздел Внешний вид → Темы.
- Выберите любую другую тему и нажмите кнопку Активировать.
- Как только вы закончите изменение темы, вы увидите подтверждающее сообщение со ссылкой на ваш сайт.
Изменение темы с помощью phpMyAdmin
Другой способ для изменения темы, это редактирование значений вашей базы данных MySQL через phpMyadmin, в панели управления вашим хостингом. Этот способ может быть полезен, если ваша панель управления WordPress не работает. Вот, что вы должны сделать:
- Найдите таблицу wp_options и откройте её.
ЗАМЕТКА! В зависимости от значений таблицы, выбранных вами в процессе установки, префикс таблиц не всегда будет wp_.
- Перейдите на Страницу 2.
- Найдите раздел template и stylesheet
- Узнайте название темы на которую вы хотите её поменять. Для этого перейдите в каталог wp-content/themes с помощью Файлового Менеджера.
- Скопируйте название темы, которую вы хотели бы использовать. Далее, измените значения template и stylesheet в базе данных на название вашей новой темы. В данном примере, мы изменим тему twentyfifteen на twentysixteen
Теперь вы снова можете перезагрузить ваш сайт в браузере, и он загрузится с новой темой. Если ошибка 500 была связана с вашей старой темой, то это должно решить проблему. Вы можете попытаться переустановить вашу старую тему или связаться с разработчиком для получения информации о правильной установке темы для вашего WordPress.
Способ 2 — Проверка файла .htaccess
Ещё одним способом для избавления от ошибки internal server error, является проверка состояния вашего файла .htaccess. Вероятность того, что ваш нынешний файл .htaccess был повреждён, весьма высока. Это могло случиться из-за огромного количества причин; самые распространённые из них это установка нового плагина или другие изменения на вашем сайте.
Лучшим методом для проверки состояния вашего файла .htaccess является создание нового. Всё, что вам нужно сделать это:
- Войти в панель управления вашим хостингом, далее в Файловый Менеджер в разделе Файлы. Альтернативный способ, это использовать FTP-клиент вроде FileZilla.
- Перейдите в корневой каталог вашего WordPress сайта (если вы видите файлы вроде wp-content и wp-includes, вы в правильном месте).
- Найдите здесь файл .htaccess и отключите его. Это можно сделать задав ему другое имя. К примеру, .htaccess1.
- После этого, создайте новый файл .htaccess и вставьте в него стандартный код .htaccess:
# 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
- Убедитесь, что сохранили файл.
Теперь, откройте ваш сайт в браузере и посмотрите исправлена ли ошибка. Если нет, продолжите чтение руководства.
Способ 3 — Увеличение лимитов PHP
Если два способа описанных выше не принесли никакого результата, то неправильные значения PHP или нехватка памяти могли стать причиной появления ошибки 500. Это происходит из-за того, что скрипты и плагины требуют определённое количество памяти для своей правильной работы. В дополнение к этому, когда загружается ваш сайт, браузер делает огромное количество запросов для загрузки скриптов, плагинов и контента. Когда количество памяти для загрузки скриптов и плагинов не хватает, WordPress, скорее всего, выдаст ошибку 500 Internal Server Error. Именно поэтому, важно увеличить значение памяти вашего сайта и других PHP настроек. Вы можете это сделать с помощью файла .htaccess. Вот несколько строк, которые мы рекомендуем вам добавить:
php_value upload_max_filesize 128M php_value post_max_size 128M php_value max_execution_time 300 php_value max_input_time 300 php_value memory_limit 256M
Не забудьте Сохранить изменения. Теперь, обновите ваш сайт. Если проблема возникала из-за недостаточных лимитов PHP, то этот способ должен помочь с её решением.
Способ 4 — Изменение версии PHP
Некоторые скрипты или плагины для WordPress требуют определённую версию PHP. Если рекомендуемые требования для них не выполнены, то в следствии этого может появиться ошибка 500. Вы можете проверить вызвана ли она версией PHP, изменив её. Это можно сделать через панель управления хостингом в разделе Дополнительно → Выбор PHP версии.
В случае, если вы не знаете какая версия PHP вам необходима, попробуйте поочередно включать каждую из них. Не забудьте Сохранять ваши настройки и обновлять сайт при каждом изменении. Если ни одна из данных версий не помогла в решении ошибки 500, то верните вашу прошлую версию PHP и перейдите к следующем способу.
Способ 5 — Включение отображений ошибок
Поиск причины возникновения ошибки WordPress 500 Internal Server Error — это самая сложная часть в процессе её исправления. Если ни один из предыдущих способов вам не помог, значит вам необходимо начать поиски поглубже — проверив ваши ошибки. Существует несколько способов для этого:
Включение отображение ошибок
Включив отображение ошибок, вы сможете найти определённый код вашего сайта, который её вызывает. Это можно сделать в том же разделе, где мы меняли версию PHP. Дополнительно → Выбор PHP версии. Установите значение Отображать Ошибки на Включена и нажмите кнопку Сохранить.
Теперь, вы должны перезагрузить ваш сайт. Все ошибки кода будет отображены на экране, как на картинке ниже:
Как только вы найдёте ошибку, откройте указанный в ней файл и посмотрите нужную строку. Вы можете использовать Google, Stackoverflow, WordPress Форум, или связаться с вашим разработчиком для получения информации о решении данной проблемы.
Способ 6 — Использование отладки WordPress
WordPress имеет свою собственную систему отладки, которую вы можете использовать для решения проблем с вашим кодом. Это также может помочь решить проблему ошибки 500. Для начала её использования, вам необходимо сделать несколько изменений в вашем файле wp-config.php.
- Найдите следующую строчку в файле wp-config.php:
define('WP_DEBUG', false);
- Удалите и вставьте на её место следующий код:
// Enable WP_DEBUG mode define( 'WP_DEBUG', true ); // Enable Debug logging to the /wp-content/debug.log file define( 'WP_DEBUG_LOG', true ); // Disable display of errors and warnings define( 'WP_DEBUG_DISPLAY', false ); @ini_set( 'display_errors', 0 ); // Use dev versions of core JS and CSS files (only needed if you are modifying these core files) define( 'SCRIPT_DEBUG', true );
- Обновите ваш сайт и откройте Файловый Менеджер. Перейдите в каталог wp-content и найдите файл debug.log. Откройте редактирование данного файла для просмотра его значений.
- Теперь вы знаете, что является причиной возникновения ошибки и сможете решить её, обратившись к разработчику или Google, Stackoverflow, WordPress Форуму. Более детальная информации о системе отладки может быть найдена здесь.
Способ 7 — Восстановление резервной копии
Если вы сделали бэкап WordPress до его поломки, восстановление резервное копии тоже может стать решением. Для начала, удалите все файлы WordPress. Затем, загрузите ваш бэкап, перепроверьте, работает ли ваш сайт.
Ручной способ восстановления WordPress может подойти не всем. Если вам кажется это слишком сложным, то мы можем подсказать вам другой способ. К сожалению, это не поможет вам, если ваш сайт не работает, но он точно поможет вам избежать подобных проблем в будущем.
- Установите и активируйте плагин All-in-One WP Migration.
- Найдите его в панели управления вашим WordPress и нажмите кнопку Export.
- Выберите опцию File (Файл), если вы хотите скачать резервную копию на ваш компьютер.
- Скачайте сгенерированную резервную копию на ваш компьютер. Она содержит файлы вашего сайта и базы данных.
- Теперь в случае появления ошибки 500 Internal Server Error (или любой другой проблемы) и невозможности её решения, вы можете просто восстановить ваш сайт с помощью резервной копии.
- Для восстановления сайта с помощью сгенерированной резервной копии, вам необходимо полностью удалить ваш сайт и установить новый WordPress, вместе с плагином All-in-One. После этого, выберите функцию Import (Импорт), выберите сгенерированный бэкап и продолжите процедуру восстановления.
Способ 8 — Переустановка файлов WordPress
Если ошибка ещё появляется, есть кардинальное средство для её решения. Всё, что вам нужно сделать это:
- Скачать последнюю версию WordPress.
- Сохранить и распаковать её на вашем компьютере.
- Удалить файл wp-config-sample.php и папку wp-content для избежания перезаписи важной информации.
- Переместить все корневые файлы на ваш хостинг аккаунт и перезаписать их. Это можно сделать с помощью FTP-клиента FileZilla.
- Далее, должно появиться окно с разрешением на перезапись файлов. Поставьте значения как на изображении для автоматизации процесса.
ЗАМЕТКА! Убедитесь, что вы сделали резервное копирование вашего сайта перед началом данного процесса. Это позволит избежать потери важной информации.
Процесс загрузки может занять от 10 до 20 минут. После завершения, попробуйте вновь обновить ваш сайт в браузере. Если ошибка 500 Internal Server Error была связана с корневыми файлами WordPress, этот способ должен помочь решить проблему.
Способ 9 — Начать всё заново
Если все из приведённых способов вам не помогли, вам придется начать создание вашего сайта с нуля. Хорошей новостью является то, что вы можете восстановить ваш сайт с помощью резервной копии. Загляните в данное руководство для пошаговой инструкции по восстановлению вашего сайта из бэкапа.
Заключение
Все, кто используют WordPress хотя бы раз сталкивались с ошибкой internal server error. Являетесь ли вы продвинутым разработчиком или начинающим пользователем, исправление ошибки 500 является довольно простым процессом, если вы знаете, где искать её причину. Как и в реальной жизни, для решения проблемы нужно сначала найти её источник. После этого, вы можете использовать онлайн ресурсы или это руководство для решения данной проблемы.
У вас есть чем с нами поделиться? Расскажите о ваших идеях или советах в комментариях!
Елена имеет профессиональное техническое образование в области информационных технологий и опыт программирования на разных языках под разные платформы и системы. Более 10 лет посвятила сфере веб, работая с разными CMS, такими как: Drupal, Joomla, Magento и конечно же наиболее популярной в наши дни системой управления контентом – WordPress. Её статьи всегда технически выверены и точны, будь то обзор для WordPress или инструкции по настройке вашего VPS сервера.
Are you seeing a 500 internal server error in WordPress?
The internal server error is one of the most common WordPress errors. Since the error doesn’t give any other information, many beginners find it quite frustrating.
In this article, we will show you how to easily fix the 500 internal server error in WordPress.
Here is a quick overview of the topics we’ll cover in this article.
- What is The 500 Internal Server Error?
- What Causes The Internal Server Error in WordPress?
- Video Tutorial
- Fixing The 500 Internal Server Error in WordPress
- Clear WordPress and Browser Cache
- Checking for Corrupt .htaccess File
- Increasing the PHP Memory Limit
- Deactivate All WordPress Plugins
- Switch to a Default WordPress Theme
- Re-uploading Core Files
- Enable Debug Logs in WordPress
- Ask your Hosting Provider
What is The 500 Internal Server Error?
The 500 internal server error is a common web server error. It is not specific to WordPress websites and can happen with any website.
The 500 in the error message is technically an HTTP error code. Looking up this code will only show its standard description.
“500 Internal Server Error response code indicates that the server encountered an unexpected condition that prevented it from fulfilling the request.“
This is a generic catch-all error message which means that the server was unable to assign a better more helpful error message when it encountered the issue.
The error page looks different depending on which web server software (Nginx or Apache) your website is using and which browser you are using.
Here is how the Apache error page may look.
It may look different if you are using Nginx and Google Chrome.
It will also look different if Google chrome is unable to find an error page to display:
For beginners, this can be incredibly frustrating. There is no clue or message that would point them in the right direction to quickly fix it.
Asking how to fix an internal server error is like asking your doctor how to fix the pain you’re experiencing without telling them where the pain is.
However, if we know the common causes that trigger this error, then we can try fixing them one by one to resolve the error without breaking anything.
What Causes The Internal Server Error in WordPress?
Internal server error in WordPress is often caused by a corrupt .htaccess file, poorly coded plugins, or your active WordPress theme.
Other possible causes of the internal server error in WordPress that we know of are: PHP memory limit or corrupt core WordPress files.
In some conditions, the internal server error may only show up when you are trying to access the WordPress admin area while the rest of the site works fine.
That being said, now let’s take a look at how to go about troubleshooting the internal server error in WordPress.
Video Tutorial
Subscribe to WPBeginner
If you prefer written instructions, then continue reading.
Fixing The 500 Internal Server Error in WordPress
Before you begin troubleshooting, make sure that you have a complete WordPress backup of your website on hand.
If you have access to the WordPress admin area, then you can a WordPress backup plugin to create a complete backup of your website. We recommend using Duplicator to handle this.
On the other hand, if you don’t have access to the WordPress admin area, then you can manually create a WordPress backup using phpMyAdmin and an FTP client.
After that, you can follow the following steps to troubleshoot and fix the internal server error on your website.
Clear WordPress and Browser Cache
Browsers and your WordPress caching plugins can sometimes mistakenly store a cached copy of an error page.
The easiest way to fix this is by first clearing your browser cache.
After that, if you have access to the WordPress admin area of your website, then you can empty the WordPress cache by visiting your caching plugin’s settings page.
For details, see our tutorial on how to clear WordPress cache.
Checking for Corrupt .htaccess File
The .htaccess file is a server configuration file that is also used by WordPress to set up redirects.
One of the most common causes of the internal server error is the corrupt .htaccess file.
The easiest way to fix this is by simply visiting the Settings » Permalinks page in the WordPress admin area and then clicking on the ‘Save Changes’ button without making any changes at all.
WordPress will now try to update your .htaccess file or generate a new one for you. You can now visit your website to see if this has resolved the internal server error.
If you can still see the error, then you need to make sure that WordPress was able to generate or write to the .htaccess file.
Sometimes, due to file and directory permissions, WordPress may not be able to create or write to your .htaccess file.
You can now try to manually replace the .htaccess file. First, you need to login to your website using FTP or the File Manager app under your hosting account control panel.
Next, you need to rename your main .htaccess file to something like .htaccess_old. This lets you keep the file as a backup, but WordPress won’t recognize it.
To rename the .htaccess file, you will need to login to your site using FTP or File Manager app in your hosting account’s cPanel dashboard.
Once you are connected, the .htaccess file will be located in the same directory where you will see folders like wp-content, wp-admin, and wp-includes.
Simply, right-click on the .htaccess file and rename it to .htaccess_old.
Next, you need to create a new .htaccess file.
Inside your site’s root folder, right-click and then select ‘Create new file’ option in your FTP client or File Manager app.
Name this new file .htaccess and click OK to save it.
Now, this .htaccess file is currently empty and you need to add default WordPress rewrite rules to it.
Simply right-click on the file and then select View/Edit in your FTP client or File Manager app.
The empty file will open in a plain text editor like Notepad or TextEdit. Now, you need to copy and paste the following code inside it.
# 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
This code is the default rule set used by WordPress. Don’t forget to save your changes and upload the file back to the server.
You can now visit your website to see if this has resolved the internal server error.
If it did, then give yourself a pat on the back because you fixed the internal server error.
Important: Before you move on with other things, make sure that you go to Settings » Permalinks page in the WordPress admin area and click the save button without making any changes. This will regenerate the .htaccess file for you with proper rewrite rules to ensure that your post pages do not return a 404 error.
If checking for the corrupt .htaccess file solution did not work for you, then you need to continue reading this article.
Increasing the PHP Memory Limit
Sometimes the internal server error can happen if a script is consuming all the PHP memory limit.
The easiest way to increase the PHP memory limit is by editing the wp-config.php file. Be careful when you do this if you’re a beginner. You want to follow these instructions carefully because even small mistakes in WordPress core files can break your site.
To begin, simply connect to your WordPress website using an FTP client or the File Manager app under your hosting account control panel.
You’ll find wp-config.php file inside the main folder of your website. Right-click on it and select ‘Download.’ This will ensure that you have a backup of the file in case something goes wrong.
When you’ve saved that, you can right-click on it and select ‘View/Edit.’
Inside the wp-config.php file, you need to add the following code just above the line that reads ‘That’s all, stop editing! Happy publishing’.
define( 'WP_MEMORY_LIMIT', '256M' );
For more details, see our tutorial on how to increase PHP memory limit in WordPress.
If you are seeing the internal server error only when you try to log in to your WordPress admin or upload an image in your wp-admin, then you should increase the memory limit by following these steps:
- Create a blank text file on your computer and name it php.ini
- Paste this code in there: memory=256MB
- Save the file
- Upload it into your /wp-admin/ folder using FTP
If increasing the memory limit fixed the problem for you, then you have only fixed the problem temporarily. You still need to find the cause that is exhausting your memory limit.
This could be a poorly coded plugin or even a theme function. We strongly recommend that you ask your WordPress web hosting company to look into the server logs to help you find the exact diagnostics.
If increasing the PHP memory limit did not fix the issue for you, then you are in for some more troubleshooting.
Deactivate All WordPress Plugins
If none of the above solutions worked for you, then this error is most likely being caused by a specific plugin installed on your website.
It is also possible that it is a combination of plugins that are not playing nice with each other.
If you can access the WordPress admin area of your website, then you can simply go to the plugins page and deactivate all WordPress plugins.
However, if you are unable to access the WordPress admin area, then you can deactivate all WordPress plugins using FTP.
Simply connect to your WordPress website using an FTP client or the file manager app under your hosting account control panel.
Once connected, navigated to the /wp-content/ folder and rename the plugins folder to plugins.deactivated.
WordPress looks for plugins in the plugins folder. If the plugins folder is not found, then it will automatically deactivate all plugins.
You can now try visiting your website to see if this resolved the internal server error on your website.
To restore all your plugins, you can simply rename the plugins.deactivated folder back to plugins.
Your plugins will now be restored but they will still be deactivated.
You can now activate plugins one by one and visit your website to figure out which plugin is causing the internal server error.
For more details, see our guide on how to deactivate all WordPress plugins without WP-Admin.
If deactivating all plugins didn’t fix the internal server error on your website, then continue reading.
Switch to a Default WordPress Theme
One possible cause of the internal server error could be some code in your WordPress theme.
To find out if this is the case, you need to switch your theme to a default WordPress theme.
If you have access to the WordPress admin area, then simply go to the Appearance » Themes page. If you have a default theme already installed then you can simply click on the Activate button to switch theme.
If you don’t have a default theme installed, then you can click on the Add New button at the top and install a default theme (Twenty Twenty-Three, Twenty Twenty-Two, etc).
Now in case you don’t have access to the WordPress admin area, you can still switch to a default theme.
Simply, connect to your WordPress website using an FTP client and navigate to the /wp-content/ folder.
Right-click to select the themes folder and download it to your computer as a backup.
Next, you need to delete the themes folder from your website. Once it is deleted, go ahead and create a new themes folder.
Your new themes folder will be completely empty which means you don’t have any WordPress themes installed at the moment.
Next, you need to visit the WordPress themes directory and download a default WordPress theme to your computer.
Your browser will then download the theme as a zip file to your computer.
Locate the file on your computer and then unzip it. Windows users can unzip file by right-clicking on it and then selecting Extract All. Mac users can double-click on the zip file to extract it.
You’ll now see a folder containing your WordPress theme.
Switch back to your FTP client or File Manager up and upload this folder to the empty themes folder.
Once uploaded, WordPress will automatically start using the default theme.
You can now visit your website to see if this resolved the internal server error.
If this didn’t work, then you can reupload your WordPress themes from the backup or switch back to the theme you were using.
Don’t worry there are still a few more things you can do to fix the error.
Re-uploading Core Files
If the plugin and theme options didn’t fix the internal server error, then it is worth re-uploading the /wp-admin/ and /wp-includes/ folders from a fresh WordPress install.
This will NOT remove any of your information, but it may solve the problem in case any file was corrupted.
First, you will need to visit the WordPress.org website and click on the Download button.
This will download the WordPress zip file to your computer.
Go ahead and extract the zip file. Inside it, you will find a wordpress folder.
Next you need to connect to your WordPress website using an FTP client.
Once connected go to the root folder of your website. It is the folder that has wp-admin, wp-includes, wp-content folders inside it.
In the left column open the WordPress folder on your computer.
Now you need to select all files inside the wordpresss folder and upload them to your website.
Your FTP client will now transfer those folders to your server.
It will ask you whether you would like to overwrite the files. Select ‘Overwrite’ and then select ‘Always use this action’.
Your FTP client will now replace your older WordPress files with new, fresh copies.
If your WordPress files were corrupted, then this step will fix the internal server error for you.
Enable Debug Logs in WordPress
WordPress comes with a built-in system to keep logs for debugging.
You can turn it on by using the WP Debugging plugin. For more details, see our guide on how to install a WordPress plugin.
Once activated, the plugin will turn on debugging logs on your WordPress website.
If you don’t have access to the admin area of your WordPress website, then you can turn on debugging by adding the following code to your wp-config.php file.
define( 'WP_DEBUG', true); define( 'WP_DEBUG_LOG', true);
Once you have turned on debug logs, you can view these logs by using an FTP client and navigating to the /wp-content/ folder.
You can open the debug log file in a text editor and it will show you a list of errors and warnings that occur on your website.
Some of these errors and warnings can be harmless incidents that may not need fixing. However, if you are seeing an internal server error on your website then these may point you in the right direction.
Ask your Hosting Provider
If all methods fail to fix the internal server error on your website, then it is time to get some more help. Contact your web hosting support team and they will be able to check the server logs and locate the root cause of the error.
If you want to continue troubleshooting on your own, then see our ultimate WordPress troubleshooting guide for beginners.
We hope this article helped you fix the internal server error in WordPress. You may also want to see our complete list of the most common WordPress errors, and our guide on how to choose the best web hosting provider.
If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.
Большинству из нас, будь то разработчики, дизайнеры или даже конечные пользователи, приходилось хотя бы раз в жизни пережить. То есть болезненный процесс получения внутренней ошибки сервера и попытки ее исправить. Многие люди не хотят знать больше – они просто хотят это исправить. Но если вы не попытаетесь хотя бы понять это, вам придется чаще страдать от этой участи. Ошибка внутреннего сервера 500 очень важна, поскольку она полностью останавливает все процессы и может вывести из строя весь ваш сайт. Так что, если мы когда-нибудь захотим от него избавиться, нам нужно сначала лучше понять, что это значит.
В этой статье я расскажу, что означает эта ошибка, как определить проблему и, конечно же, как ее исправить. Но прежде чем начать, я хочу провести вас через различные существующие ошибки http (сайта) и то, что они потенциально могут означать. Если хотите, можете сразу перейти к тому, как исправить ошибку WordPress 500.
Общие коды состояния и ошибок HTTP
Перво-наперво – я собираюсь объяснить, что на самом деле означают эти ошибки. В настоящее время существует список состояний и ошибок для HTTP, к которым можно получить доступ, чтобы лучше устранить проблему. Эти ошибки обычно делят по типам. Итак, чтобы сократить этот вопрос, мы рассмотрим наиболее важные ошибки и информационные коды состояния, которые вы найдете при работе со своим сайтом WordPress.
100x ответ (статус)
Этот тип ответа предоставляется непосредственно веб-сервером. В зависимости от вашей хостинговой компании ответ может быть предоставлен Apache, nginx или любым другим веб-сервером, который использует компания. Этот тип ответа не связан с ошибками. Обычно они используются, чтобы указать, что соединение установлено. Это коды состояния ответа на соединения.
200x ответ (успех)
Я называю их успешными. Такой ответ всегда свидетельствует об успехе. Это означает, что либо сервер успешно подключился к вам, что запрашиваемые ресурсы были предоставлены правильно, либо было установлено прокси-соединение.
Самый распространенный успешный код известен как 200 OK. Вы можете увидеть примеры этого, если используете инструмент тестирования скорости WordPress, скажем, в Pingdom Tools, и пытаетесь узнать FTTB (первый раз в байтах). Ответ 200 OK всегда выдается на первый сделанный запрос.
300x ответ (перенаправления)
Ребята перенаправления. Эти коды всегда передаются, если данная ссылка переадресовывается. 300 кодов состояния указывают на успешное перенаправление и также не считаются ошибкой.
Предположим, у вас есть сайт SSL (HTTPS), и у вас также есть прямой доступ к HTTP (незащищенный), и вы хотите перенаправить всех на HTTPS-версию своего сайта. Вы можете создать перенаправление для всех запросов, поступающих с HTTP, на HTTPS. Если вы случайно попытаетесь зайти на свой сайт по HTTP, ваш браузер получит ответ 300, указывающий на перенаправление на версию HTTPS.
Другой распространенный пример, с которым вы, возможно, знакомы, – это локальные перенаправления для SEO. Возможно, вы удалили старые сообщения или страницы. С помощью такого плагина, как Yoast SEO, вы можете 301 перенаправить их на новые, более релевантные страницы. Или используйте временное перенаправление 307, если вы работаете над обновлением и хотите ненадолго перенаправить пользователей на другую страницу.
Ответ 400x (ошибки клиента)
Известные клиентские ошибки. Эти типы ошибок связаны с проблемами в вашем браузере. Как правило, не удается загрузить определенный актив (наиболее известной является ошибка 404). Это коды ошибок, которые не считаются серьезными.
Та же ошибка может появиться, если вы попытаетесь получить доступ к несуществующему изображению на вашем сайте. Например, вы можете использовать перенаправление 410, чтобы сообщить поисковым системам, что контент был окончательно удален, или 451, если вы сделали страницу недоступной по юридическим причинам (например, по запросу DMCA).
Ответ 500x (ошибки сервера)
И вот мы подошли к нашему главному герою. 500 ошибок. Как видите, это важные ошибки, которые всегда связаны с самим сервером. Ошибки сервера важны, потому что они могут привести к сбою вашего сайта. Из этих ошибок наиболее важными являются:
- Услуга A 503 недоступна
- Ошибка 502 неверного шлюза
- Внутренняя ошибка сервера 500
Давайте рассмотрим 3 из них в порядке важности.
сервис 503 недоступен
Наименее серьезным является недоступность службы 503. Если эта ошибка появляется, у вас проблема с ресурсами на веб-сервере. Почти всегда это появляется, когда ваш сервер перегружен. Проще говоря, если вы видите эту ошибку, знайте, что она временная и напрямую связана со слишком большим объемом трафика, и это приводит к перегрузке процессора. Когда ЦП и сам веб-сервер не могут обрабатывать больше входящих подключений, потому что он достиг 100% загрузки ЦП, вы увидите это всплывающее окно с ошибкой.
Вы можете исправить это, либо переключившись на лучший веб-сервер (например, с Apache на Nginx), либо внедрив плагин кэширования WordPress на свой сайт.
502 Неверный шлюз
Это то, что я назвал ошибкой неправильной конфигурации. Эта ошибка не появляется без причины. Если у вас когда-либо возникала эта ошибка, скорее всего, причина в том, что вы что-то сделали, но сделали это неправильно. Обычно это происходит, когда люди пытаются настроить Apache и конфигурацию PHP или при попытке оптимизировать nginx. Плохой шлюз – это ошибка, которая почти всегда возникает, когда PHP FPM (Fast Process Manager) теряет соединение. Либо из-за неправильной настройки, либо из-за сбоя процесса. Это приводит к тому, что веб-сервер отвечает неверным шлюзом.
Самый простой способ исправить эту ошибку – дважды проверить конфигурацию PHP-FPM, поскольку это наиболее вероятная причина этой ошибки. Это происходит чаще на стороне Nginx, чем на Apache, и почти никогда не происходит на службах хостинга, предоставляемых cPanel или Plesk. На последних двух панелях предусмотрены меры предосторожности для предотвращения ошибки неправильной конфигурации. Но это происходит очень часто при управлении собственным VPS.
Нужна дополнительная помощь с этим? Следуйте нашему руководству о том, как исправить ошибку 502 неверного шлюза.
500 – внутренняя ошибка сервера
Большой плохой мальчик ошибок. Внутренняя ошибка сервера 500 – худшая из них, прежде всего потому, что это такая общая ошибка. Если у вас нет достаточных знаний о том, как с этим бороться, это может стать настоящей болью, поскольку может вывести из строя весь ваш сайт. Ошибка 502 неверного шлюза также вызывает сбой вашего сайта, но ее легче диагностировать и исправить. Как уже упоминалось, это почти всегда связано с конфигурацией FPM.
Причины 500 внутренних ошибок сервера и способы их устранения
Первое, что нужно понять об ошибке 500, – это то, что она может быть вызвана рядом различных факторов, которые почти всегда связаны с сбоями в выполнении кода. Вместо того, чтобы пытаться диагностировать все сразу, я дам вам список ошибок по типу проблемы и тому, что вы делали.
- Путем переноса старого сайта на новый хостинг
- Ошибка в .htaccess в конфигурации apache
- Ошибка выполнения PHP-кода
Существуют и другие, менее распространенные случаи, которые могут вызвать внутреннюю ошибку сервера 500, но для простоты и удобства использования этой статьи я сосредоточусь на этих трех.
1 Перенос старого сайта на новый хостинг
Эта ошибка может появиться несколькими способами, но почти всегда кажется, что это связано с версией PHP, привязанной к вашему веб-серверу. Более новые версии PHP могут немедленно вызвать внутреннюю ошибку сервера 500, если текущий сайт или плагины не поддерживают текущую версию.
Эта ошибка является классической, например, когда вы переносите свой сайт с посредственного хостинга со старой версией PHP на более новый хостинг, который принимает только более новые версии (7.0 и выше). Если ваш сайт не обновлялся в последнее время, возможно, проблема связана со старым плагином. Я называю это «внутренней ошибкой сервера миграции», потому что это почти всегда происходит при миграции сайта.
Решение
Лучший способ исправить эту ужасную ошибку, когда вы так сильно пытаетесь перенести свой сайт WordPress на новый хостинг, – это сделать полную копию ваших плагинов и темы вашего сайта. После этого удалите все плагины со своего сайта и попробуйте еще раз. Если ошибка исчезнет, почти гарантировано, что ошибка была сгенерирована более новой версией PHP на вашем хостинге, которая просто отказывается выполнять код в вашем более старом плагине. Повторно загружая один плагин за раз, вы можете легко узнать, какой из них вызвал проблему.
Эти ошибки почти всегда проявляются при переносе старых сайтов, работающих на PHP 5.4 и 5.6, на новый хостинг с PHP 7.0, 7.1 или 7.2.
То же самое относится и к вашей теме. Поскольку темы могут реализовывать и реализуют дополнительный PHP-код в файлах functions.php, single и page.php. Скорее всего, более старая тема без обновлений может сломать ваш сайт после переноса на хостинг с более новой версией PHP. Эта ситуация прискорбна, поскольку единственный способ исправить это – изменить тему и перестроить ваш сайт. Это наихудший сценарий.
2 Ошибка конфигурации .htaccess Apache
Допустим, вы настраивали плагин, и вдруг все вылетает. Если вы получаете внутреннюю ошибку сервера 500 при настройке, например, плагина кэширования или любого плагина, связанного с оптимизацией, вам необходимо проверить, добавил ли плагин дополнительный код в ваш файл .htaccess.
Поскольку apache можно изменять в реальном времени, настраивая функции в файле .htaccess (который почти всегда скрыт), неправильная конфигурация может нарушить работу вашего сайта.
Решение
Чтобы исправить это, либо войдите в свой сайт через FTP и измените файл .htaccess, либо путем прямого редактирования, например, с помощью проводника файлов на cPanel или Plesk.
Если вы не знаете, как отменить то, что сделал плагин, и вам снова нужен ваш сайт, сделайте копию существующего содержимого в виде текстового файла. Сохраните это как резервную копию. Затем замените весь .htaccess следующим кодом:
# 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
Это файл .htaccess WordPress по умолчанию. Он должен работать с любым сайтом. Итак, если вы в отчаянии и не знаете, какую часть удалить, просто удалите все и вставьте этот код. Он мгновенно вас спасет. Позже вы можете удалить плагин или попробовать настроить его снова. Теперь вы знаете, как спасти вас от этой катастрофической ошибки. По крайней мере, если это связано с .htaccess.
Если вы не знаете, связана ли это с .htaccess, или эта ошибка начала появляться, даже если вы не касались каких-либо плагинов, не рискуйте. Просто скопируйте содержимое вашего .htaccess и скопируйте приведенный выше код, чтобы попытаться диагностировать. Если это не помогло, оставьте .htaccess как есть, а затем попробуйте следующее предложение.
3 Ошибка выполнения кода PHP.
Ошибки такого типа встречаются чаще, чем вы думаете, и обычно они возникают, если плагин выполняет недопустимый код. Самый распространенный способ выполнения недопустимого кода – это попытка выполнить устаревшие инструкции. Возможно, вы пытаетесь запустить старый плагин, который был разработан для работы только с PHP 5.4 или 5.6 с PHP 7.0 или более новыми версиями. Устаревшие и недопустимые функции вызовут внутреннюю ошибку сервера, которую можно диагностировать только путем включения режима отладки WP.
Включить wp_debug
Режим отладки WordPress предоставит вам подробную информацию об ошибке, которая остановила выполнение. Мы включаем его, изменяя значение с «false» на «true» в wp_debug внутри файла wp-config.php в корневой папке вашего сайта.
Если вы используете Plesk или cPanel, вы можете сделать это, просто изменив это значение с помощью проводника и отредактировав wp-config.php. Вы также можете следовать этому руководству по отладке от Blogvault, чтобы получить более подробные инструкции.
Как только файл будет отредактирован, вы сможете увидеть фактическую ошибку, которая остановила выполнение. В ошибке также будет указан путь и файл, в котором это произошло, поэтому легко догадаться, какой плагин вызвал ее. При отключении его можно пропустить ошибку, а затем обновить плагин или удалить его, в зависимости от ситуации.
Решение
Подавляющее большинство случаев внутренней ошибки сервера 500 связано с более старыми версиями тем или плагинами. Переключив вашу тему на любую стандартную тему WP, вы сможете восстановить доступ к своему сайту. Отключение конфликтующих плагинов также вернет вам доступ к панели управления. Если вы столкнулись с ситуацией, когда ваша тема является ответственной за нарушение работы сайта, лучший способ исправить это – создать zip-файл указанной темы из папки темы wp-content / themes / yourtheme, а затем удалить его из твой сайт. Это устранит ошибку, и вы сможете восстановить доступ к своему сайту. Затем вы можете повторно загрузить его и обновить, не активируя. То же самое можно сделать и с плагинами.
Наиболее частые ситуации для 500 внутренних ошибок сервера можно исправить обновлением. В случаях, когда для указанного плагина / темы нет доступных обновлений, вы можете попробовать переключиться на более старую версию PHP. Но знайте, что это временное решение. Новые версии PHP становятся стабильными, а старые версии регулярно объявляются устаревшими. Рано или поздно ваш сайт точно перестанет работать. Лучшим подходом всегда будет обновить или удалить / заменить соответствующие плагины.
Всегда помните, что лучше предотвратить и обновить, чем пытаться устранить повреждения позже.
Завершение нашего руководства по внутренним ошибкам сервера WordPress 500
Внутренняя ошибка сервера WordPress 500 может стать настоящей проблемой. Но в большинстве случаев их можно легко диагностировать и исправить, просто удалив / обновив конфликтующие части вашего сайта. Хотя могут быть ситуации, когда эти ошибки выходят за рамки нормы (например, при разработке плагина), это выходит за рамки цели данной статьи.
Для подавляющего большинства людей приведенный выше совет должен решить вашу проблему. Помните, что wp-debug – ваш лучший друг, и всегда внимательно следуйте инструкциям. Ваш сайт будет снова в сети в кратчайшие сроки.
Остались вопросы? Или советы по устранению внутренней ошибки сервера WordPress 500? Дай мне знать!
Источник записи: https://www.wpexplorer.com
-
1.
Из-за чего возникает ошибка Internal Server Error в WordPress? -
2.
Проверка файла .htaccess на наличие ошибок -
3.
Увеличение лимита PHP памяти -
4.
Деактивируйте все плагины -
5.
Повторная загрузка файлов WordPress -
6.
Помощь вашего хостинг провайдера
Как исправить ошибку 500 “Internal Server Error” в WordPress? Internal Server Error (внутренняя ошибка сервера) – одна из распространенных ошибок WordPress. Так как ошибка не дает никакой дополнительной информации, новички часто впадают в ступор, как же с ней бороться. В этой статье мы расскажем и покажем, как легко исправить ошибку 500 Internal Server Error в WordPress.
Internal Server Error не относится именно к WordPress. Ошибка может возникнуть на любом сайте, работающем на хостинге. Из-за различных причин её возникновения, она ничего не говорит разработчику.
Спрашивать, как исправить Internal Server Error, это тоже самое, что спросить у врача, как избавиться от боли, не говоря, где и что болит.
Internal Server Error в WordPress часто появляется из-за не правильности кода плагинов и тем. Также возможны другие причины Internal Server Error, например поврежденный файл .htaccess или ограничение памяти PHP.
Также бывают случаи, когда 500 ошибка возникает при входе в админ панель, хотя публичная часть сайта работает нормально.
Давайте посмотрим, как исправить ошибку Internal Server Error в WordPress.
Проверка файла .htaccess на наличие ошибок
Первое, что вы должны сделать при устранении ошибки Internal Server Error – проверить файл .htaccess
.
Сделать вы это можете переименовав основной файл .htaccess
в что-то вроде .htaccess_old
. Чтобы это сделать, вам нужно войти на свой сайт используя FTP-клиент или “Диспетчер файлов” в панели управления хостингом.
Файл .htaccess
находится в корне сайта, там же, где находятся папки wp-content, wp-admin и wp-include.
После того, как вы переименовали файл .htaccess, попробуйте зайти на ваш сайт и проверить, пропала ли ошибка. Если это так, то поздравляем, вы исправили ошибку Internal Server Error.
На этом мы ещё не закончили. Перейдите в админ-панель сайта в раздел Настройки -> Постоянные ссылки
и нажмите кнопку “Сохранить“, не внося никаких изменений. Это позволит создать новый файл .htaccess
для вашего сайта. Это даст гарантию, что все ссылки будут открываться корректно и не возникнет 404 ошибок.
Если этот способ не помог, то давайте продолжим.
Увеличение лимита PHP памяти
Иногда внутренняя ошибка сервера может произойти, если вы исчерпаете лимит PHP памяти (PHP Memory Limit).
Чтобы увеличить лимит PHP памяти, просто добавьте в файл wp-config.php следующую строку:
Если вы видите ошибку 500 только тогда, когда вы пытаетесь войти в админ панель или загружаете изображение в медиатеку, то вы увеличить лимит памяти можно выполнив следующие действия:
- Создайте пустой текстовый файл с именем php.ini в корне вашего сайта
- Вставьте в файл этот код:
memory = 64MB
- Сохранить файл
Некоторые пользователи сообщают, что выполнение этого действия исправило проблему в панели администратора.
Если после увеличения лимита PHP памяти ошибка Internal Server Error пропала, то это не значит, что проблема решена полностью. Вам нужно определить, почему исчерпался предел памяти.
В этом может быть виноват плохо написанный плагин или функция в теме. Мы рекомендуем обратиться в поддержку вашего хостинга, чтобы они проверили логи сервера. Это поможет понять, что использует большое количество памяти.
Если увеличение лимита PHP памяти не устранило проблему, вам нужно ещё кое-что сделать.
Деактивируйте все плагины
Если ни одно из перечисленных выше решений не помогло вам победить ошибку Internal Server Error, то проблема определенно вызвана каким-то плагином. Также возможно, что есть конфликтующие плагины, которые вызывают ошибку из-за несовместимости друг с другом.
Единственный способ понять, какой плагин вызывает ошибку – отключить все плагины одновременно.
Чтобы это сделать, нам потребуется подключиться к сайту с помощью FTP-клиента или “Диспетчера файлов” на вашем хостинге.
Зайдите в корень вашего сайта, далее в папку wp-content. Там вы увидите папку plugins. Вам нужно переименовать эту папку, например в plugin-deactivate.
С помощью этого незамысловатого действия, вы сможете отключить все плагины на вашем сайте.
Далее попытайтесь зайти на сайт в админ панель. Если ошибка пропала, то поздравляем – мы нашли причину ошибки.
Теперь следует переименовать папку с плагинами обратно в plugin. После этого зайдите в админку сайта в раздел Плагины -> Установленные
. Вы заметите, что все плагины деактивированы и всё что вам нужно делать, это включать плагины по одному и каждый раз проверять работоспособность сайта. Этот процесс довольно долгий, но позволяет точно определить проблемное место.
После нахождения проблемного плагина – удалите его и сообщите о ошибке разработчику плагина.
Данный способ вы можете проделать также с активной темой, переименовав папку темы. Желательно, чтобы на сайте была установлена одна из стандартных тем WordPress.
Повторная загрузка файлов WordPress
Если отключая все плагины у вас не удалось избавиться от ошибки Internal Server Error, то стоит заново загрузить папки wp-admin
и wp-include
из официальной сборки на ваш хостинг.
Вы можете воспользоваться нашей полной инструкцией, как обновить WordPress. Это поможет вам обновить ядро WordPress до актуальной версии и исправить возможные ошибки.
Если вы не хотите обновлять WordPress, то вам потребуется скачать ту версию WordPress с официального сайта, которая установлена на вашем сайте. Это позволит избежать конфликтов между файлами.
Помощь вашего хостинг провайдера
Если все изложенные методы не помогли исправить ошибку 500 Internal Server Error на вашем WordPress сайте, то пришло время получить дополнительную помощь. Обратитесь в службу поддержки вашего хостинга. Они смогут проверить журнал сервера и определить причину ошибки.
Мы надеемся, что эта статья помогла вам справить Internal Server Error в WordPress. В комментариях пишите, какой способ помог лично вам, какие способы борьбы с этой ошибкой вы знаете.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.