Руководство для новичков: внутренняя ошибка сервера (HTTP 500)

Примечание: Этот текст может содержать некоторые партнерские ссылки, а это значит, что я зарабатываю небольшую комиссию без каких-либо дополнительных затрат с вашей стороны, если вы воспользуетесь этими ссылками. Спасибо за понимание и поддержку.

Если вы занимаетесь блоггингом более года, наверняка видели такую ошибку на экране монитора (в окне браузера). Внутренняя ошибка сервера — наиболее распространенная ошибка, которая может заставить вздрогнуть даже опытных владельцев сайтов.

Конечно, паника — это худший вариант реакции на любую ситуацию. Главное — не паниковать.

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

Давайте для начала попытаемся понять, почему появляется это сообщение об ошибке.

Почему мы получаем сообщение о внутренней ошибке сервера (HTTP 500)

Эта ошибка — не типична для WordPress. Она может появится на любом сайте, любой системы управления, любом скрипте, запущенном на любом сайте.

Эта ошибка сервера, на котором стоит ваш сайт. Сервер не в состоянии определить (идентифицировать) проблему и выдает данное сообщение:

500-internal-server-error

В каждом браузере окно ошибки выглядит по-разному, но сам текст — везде одинаковый.

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

Если вы самостоятельно не умеете найти проблему и обращаетесь с вопросом на форум WordPress или еще куда-нибудь, и пишите: у меня — ошибка 500 (внутренняя ошибка сервера), что мне делать? Это тоже самое, если спросите своего участкового врача: как вылечить боль — не объясняя, где именно и что болит.

Как тогда вас вылечить??

Чаще всего, проблема появления внутренней ошибки сервера в следующем:

  • Некорректная установка, настройка, работа плагина WordPress
  • Некорректная установка, настройка, работа активной темы WordPress
  • Некорректная работа файла .htaccess
  • Лимит памяти PHP

Очень часто внутренняя ошибка сервера появляется в том случае, когда вы:

  • Работаете в Консоле администратора
  • Пытаетесь получить доступ в Консоль администратора

При этом сайт ваш продолжает работать корректно.

Давайте попробуем найти причину ошибки.

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

Это самый быстрый вариант поиска и устранения ошибки сервера.

Этот файл лежит в основной директории вашего сайта:

htaccess

Я знаю сервера, на которых Администратор сервера так настраивает систему, что файл .htaccess для вас — не виден, и вы не имеете к нему доступа. Тогда надо все вопросы решать с технической поддержкой вашего хостинга.

Если вы используете ЧПУ по умолчанию, в виде: ваш_сайт/?p=123, у вас файла .htaccess в корневой директории сайта может не быть вообще.

Тогда вам надо мои комментарии относительно этого файла пропустить, и перейти сразу к следующему решению этой проблемы.

Когда вы найдете этот файл, переименуйте его, например, в .htaccess_old. И проверьте — пропала ошибка HTTP 500 или нет. Если пропала — значит, у вас некорректные правила в файле .htaccess. Надо найти и изменить.

Если у вас Постоянные ссылки — не дефолтные (пример выше) — перейдите в раздел Настройки — Постоянные ссылки и пересохраните их. У вас автоматически будет создан новый файл .htaccess с корректными правилами.

Если этот вариант устранения проблемы не помог — идем дальше.

Лимит памяти PHP

Если у вас внутренняя ошибка сервера (HTTP500) появляется именно при попытке войти в консоль администратора или при попытке загрузить файлы изображений — скорее всего проблема в установленном на вашем сервере лимите памяти PHP.

Конфигурация сервера находится в файле php.ini, который для вас — недоступен.

Как увеличить лимит? Чаще всего — никак. Много зависит от вашего Администратора на хостинге (техническая поддержка, саппорт). Вы можете сначала узнать, какой лимит памяти выделен для работы PHP. Для этого скачайте мой файл под названием — test.php, положите его в корневую директорию вашего сайта и запустите (пример у меня — https://bestplugins.ru/test.php).

Скачать файл test.php

Вы увидите полную информацию о вашем PHP и все настройки вашего сервера:

phpinfo

С помощью поиска на странице найдите такую фразу: memory_limit

Увидите размер выделяемой памяти. На моем сервере он равен: 128М (мегабайт). Это достаточный размер для работы WordPress. Но у вас, в зависимости от настроек, этот размер может быть не более 32М. Этого мало. Нужно увеличить. Как?

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

А что нужно сделать?

  1. Cоздайте текстовый файл под именем — php.ini
  2. Добавьте в него такую строку — memory_limit = 128M
  3. Положите этот файл через FTP в директорию /wp-admin, /wp-content, wp-content/uploads (3 разных файла! php.ini)

Не помогло? Тогда сделайте так:

  1. Откройте файл wp-config.php в основной директории сайта
  2. Добавьте в него строку (сразу после начального тега PHP! второй строкой!!): define(‘WP_MEMORY_LIMIT’, ‘128M’);

Не помогло?

Тогда пишите в саппорт описания своей проблемы, а именно:

При попытке войти в консоль администратора или (указать другую причину) я у меня в окне браузера появляется сообщение о внутренней ошибке сервера — HTTP500. Прошу помочь найти причину через лог-файлы сайта.

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

Почему надо искать проблему даже если приведенные выше примеры увеличения лимита памяти эту проблему решили?

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

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

Отключить все плагины WordPress

Сначала деактивируете все плагины. Затем активируете их по очереди и проверяете — появилась ошибка или нет.

Отключить активную тему WordPress

Переключитесь на любую дефолтную тему WordPress. Что с ошибкой?

Повторно загрузить файлы ядра WordPress

Для этого через FTP руками — удалите папки /wp-admin, /wp-includes. Затем также руками загрузите через FTP эти папки вашей версии WordPress.

Что с ошибкой?

Проблема решена? Нет?

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

Если саппорт у вас адекватный — помогут. Посмотрят лог-файлы и найдут причину.

Если саппорт — невменяемый (сплошь и рядом) — бегите с этого хостинга.

Например, ко мне на мой сервер. Идеальные условия, лучше которых в Рунете вы не найдете. Почему? Читайте здесь — http://www.5hosting.ru

Это мой собственный сервер, который стоит на технической площадке крупного украинского интернет-провайдера. Вы платите только за дисковое пространство — все остальное без ограничений. А лимит памяти — 128М (вы могли это видеть по ссылке в статье).

Важно! Эта запись может содержать ссылки на плагины, которые к моменту вашего чтения и скачивания могут работать не корректно. Будьте внимательны.

3 Comments

Добавить комментарий

Ваш email нигде не будет показан. Обязательные поля помечены *