Что значит 500 internal server error. Ошибка Internal Server Error: что это и как с ней бороться

Скачать на Телефон 04.08.2019
Скачать на Телефон

Наткнулись в WordPress на ошибку 500 Internal Server Error? Ну что же, вы не одни! Ошибка 500 Internal Server Error – это одна из самых распространенных ошибок с которой сталкиваются пользователи WordPress. Однако найти реальную причину появления ошибки 500 Internal Server Error не так легко, как например ошибки 404, где причиной может быть либо сломанные permalinks или измененные URL страницы.

Самыми распространенными причинами стоящими за появлением ошибки 500 являются поврежденные файлы.htaccess, неправильно установленные права, задержки скрипта, неправильная версия PHP или неудачное обновление WordPress. Однако это еще не все причины появления этой проблемы. Поэтому вам необходимо копнуть глубже и узнать настоящую причину данной ошибки. Одним из лучших советов при появлении ошибки 500 Internal Server Error в WordPress является отследить ваши шаги до момента появления ошибки. Постарайтесь вспомнить какое событие или изменение могло привести к остановке работы вашего WordPress (к примеру, установка или обновление плагина). Как только вы узнаете причину появления ошибки, решить ее будет гораздо проще.

Вот краткое руководство по исправлению ошибки 500 в WordPress с помощью 9 различных способов. Будьте уверены, это руководство поможет вам справиться со всеми возможными причинами возникновения ошибки. Давайте не будем терять время и начнем данное руководство по WordPress.

ВАЖНО! Безопасность прежде всего. Перед началом данного руководства, мы рекомендуем произвести резервное копирование вашего сайта для предотвращения потери данных.

Перед тем, как вы начнете это руководство, вам понадобится следующее:

  • Доступ к панели управления вашим хостингом
  • Доступ к панели управления WordPress

Способ 1 - Ошибка 500 в WordPress из-за плагинов или тем

В большинстве случаев, ошибка 500 Internal Server Error возникает из-за установки или обновления плагинов или тем. Если вы уже знаете какой из плагинов мог вызвать данную проблему, вы уже на пол пути к ее решению.

Способ 1.1 - Ошибка 500 в WordPress из-за обновления или установки плагина

Если страница перестала работать после установки или обновления плагина, вы можете починить ее просто отключив или удалив плагин. В зависимости от ситуации, существует два пути для достижения цели.

Отключение плагинов через панель управления WordPress

Если вы можете войти в вашу панель управления WordPress, следуйте данным этапам:

  1. Войдите в вашу панель управления WordPress.
  2. Нажмите на Плагины → Установленные в левом меню навигации .
  1. Отключите проблемный плагин.

  1. Обновите сайт в браузере, чтобы проверить решена ли проблема.
  2. Если нет, отключите другой плагин и повторяйте данный процесс пока все плагины не будут отключены (или сайт не заработает).
  3. Как только вы найдете плагин ответственный за появление ошибки, попробуйте переустановить его заново. Вы также можете поискать другие плагины на его замену или связаться с разработчиками плагина для уточнения информации о его работе на вашем WordPress.

Отключение плагинов WordPress через Файловый Менеджер или FTP

Существуют ситуации, когда ошибка не позволяет получить доступ к панели управления WordPress. В этом случае, вам придется отключить или удалить плагин с помощью Файлового Менеджера в панели управления вашим хостингом или .

  1. Пройдите в корневой каталог вашего WordPress и войдите в папку wp-content/plugins .
  2. Найдите проблемный плагин и переименуйте его для отключения. К примеру, вы можете добавить .отключен в конец файла, чтобы не забыть об этом плагине. Если вы хотите удалить его полностью, просто удалите папку с плагином.

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

Способ 1.2 - Ошибка 500 в WordPress из-за установки или обновления темы

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

Изменение темы с помощью панели управления WordPress

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

  1. Перейдите в раздел Внешний вид → Темы .

  1. Выберите любую другую тему и нажмите кнопку Активировать .

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

Изменение темы с помощью phpMyAdmin

Другой способ для изменения темы, это редактирование значений вашей базы данных MySQL через phpMyadmin, в панели управления вашим хостингом. Этот способ может быть полезен, если ваша панель управления WordPress не работает. Вот, что вы должны сделать:

  1. Найдите таблицу wp_options и откройте ее.

ЗАМЕТКА! В зависимости от значений таблицы, выбранных вами в процессе установки, префикс таблиц не всегда будет wp_ .

  1. Перейдите на Страницу 2 .
  1. Найдите раздел template и stylesheet

  1. Узнайте название темы на которую вы хотите ее поменять. Для этого перейдите в каталог wp-content/themes с помощью Файлового Менеджера.

  1. Скопируйте название темы, которую вы хотели бы использовать. Далее, измените значения template и stylesheet в базе данных на название вашей новой темы. В данном примере, мы изменим тему twentyfifteen на twentysixteen

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

Способ 2 - Проверка файла .htaccess

Еще одним способом для избавления от ошибки internal server error, является проверка состояния вашего файла.htaccess. Вероятность того, что ваш нынешний файл.htaccess был поврежден весьма высока. Это могло случиться из-за огромного количества причин; самые распространенные из них это установка нового плагина или другие изменения на вашем сайте.

Лучшим методом для проверки состояния вашего файла.htaccess является создание нового. Все, что вам нужно сделать это:

  1. Войти в панель управления вашим хостингом, далее в Файловый Менеджер в разделе Файлы . Альтернативный способ, это использовать .
  2. Перейдите в корневой каталог вашего WordPress сайта (если вы видите файлы вроде wp-content и wp-includes , вы в правильном месте).
  3. Найдите здесь файл.htaccess отключите его. Это можно сделать задав ему другое имя. К примеру, .htaccess1.

  1. После этого, создайте новый файл .htaccess и вставьте в него стандартный код.htaccess :
# BEGIN WordPress RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] # END WordPress
  1. Убедитесь, что сохранили файл.

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

Способ 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

Способ 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 .

  1. Найдите следующую строчку в файле wp-config.php:
define("WP_DEBUG", false);
  1. Удалите и вставьте на ее место следующий код:
// 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);
  1. Обновите ваш сайт и откройте Файловый Менеджер . Перейдите в каталог wp-content и найдите файл debug.log . Откройте редактирование данного файла для просмотра его значений.

  1. Теперь вы знаете, что является причиной возникновения ошибки и сможете решить ее обратившись к разработчику или Google , Stackoverflow , WordPress Форуму . Более детальная информации о системе отладки может быть найдена .

Способ 7 - Восстановление резервной копии

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

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

  1. Установите и активируйте плагин All-in-One WP Migration .

  1. Найдите его в панели управления вашим WordPress и нажмите кнопку Export.

  1. Выберите опцию File (Файл), если вы хотите скачать резервную копию на ваш компьютер.

  1. Скачайте сгенерированную резервную копию на ваш компьютер. Она содержит файлы вашего сайта и базы данных.
  2. Теперь в случае появления ошибки 500 Internal Server Error (или любой другой проблемы) и невозможности ее решения, вы можете просто восстановить ваш сайт с помощью резервной копии.
  3. Для восстановления сайта с помощью сгенерированной резервной копии, вам необходимо полностью удалить ваш сайт и установить новый WordPress, вместе с плагином All-in-One. После этого, выберите функцию Import (Импорт) , выберите сгенерированный бэкап и продолжите процедуру восстановления.

Если ошибка еще появляется, есть кардинальное средство для ее решения. Все, что вам нужно сделать это:

  1. Скачать последнюю версию WordPress .
  2. Сохранить и распаковать ее на вашем компьютере.
  3. Удалить файл wp-config-sample.php и папку wp-content для избежания перезаписи важной информации.
  4. Переместить все корневые файлы на ваш хостинг аккаунт и перезаписать их. Это можно сделать с помощью .

  1. Далее, должно появиться окно с разрешением на перезапись файлов. Поставьте значения как на изображении для автоматизации процесса.

ЗАМЕТКА! Убедитесь, что вы сделали резервное копирование вашего сайта перед началом данного процесса. Это позволит избежать потери важной информации.

Процесс загрузки может занять от 10 до 20 минут. После завершения, попробуйте вновь обновить ваш сайт в браузере. Если ошибка 500 Internal Server Error была связана с корневыми файлами WordPress, этот способ должен помочь решить проблему.

Способ 9 - Начать всё заново

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

Заключение

Все, кто используют WordPress хотя бы раз сталкивались с ошибкой internal server error. Являетесь ли вы продвинутым разработчиком или начинающим пользователем, исправление ошибки 500 является довольно простым процессом, если вы знаете где искать ее причину. Как и в реальной жизни, для решения проблемы нужно сначала найти ее источник. После этого, вы можете использовать онлайн ресурсы или это руководство для решения данной проблемы.

Внутренняя ошибка сервера 500 - это очень общий код состояния HTTP, код означающий, что на сервере сайта что-то пошло не так, но сервер не может быть более конкретным в отношении точной проблемы. То есть сервер не может дать вам точный ответ что пошло не так!

Вы - веб-мастер? Смотрите « Исправление ошибок внутреннего сервера» на вашем собственном сайте в нижней части страницы для получения более подробных рекомендаций, в том случае если вы видите 500 Internal Server Error на одной или нескольких ваших собственных страницах.

Сообщение об ошибке внутреннего сервера 500 можно увидеть любым количеством способов, поскольку каждому веб-сайту разрешено настраивать сообщение.

Вот несколько распространенных способов, с помощью которых можно увидеть ошибку HTTP 500:

2. Как вы можете увидеть ошибку 500

500 - внутренняя ошибка сервера

HTTP 500 - Внутренняя ошибка сервера

Временная ошибка (500)

Внутренняя ошибка сервера

Внутренняя ошибка HTTP 500

500. Это ошибка

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

В большинстве случаев в окне интернет-браузера отображается внутренняя ошибка сервера 500, как это делают веб-страницы.

3. Причина ошибок HTTP 500

Как я уже упоминал выше, сообщения об ошибках внутреннего сервера показывают, что что-то, в общем, неверно.

В большинстве случаев «неправильный» означает проблему с программированием страницы или сайта, но, безусловно, есть вероятность, что проблема на вашем конце, что мы рассмотрим ниже.

Примечание. Более конкретная информация о причине конкретной ошибки HTTP 500 часто предоставляется, когда она возникает на сервере с использованием программного обеспечения Microsoft IIS. Ищите номера после 500 , как в HTTP-ошибке 500.19 - Внутренняя ошибка сервера , что означает, что данные конфигурации недействительны. См. Дополнительные способы, по которым вы можете увидеть внутреннюю ошибку сервера ниже для полного списка.

4. Как исправить ошибку внутреннего сервера 500

Как я уже упоминал выше, 500 Internal Server Error представляет собой ошибку на стороне сервера, что означает, что проблема, вероятно, связана не с вашим компьютером или интернет-соединением, а с сервером веб-сайта.

Хотя это и не вероятно, возможно, что с вашей стороны тоже что-то не так, и в этом случае мы рассмотрим некоторые вещи, которые вы можете попробовать:

  1. 1. Перезагрузите страницу . Вы можете сделать это, нажав кнопку обновления / перезагрузки, нажав F5 или Ctrl-R или повторив URL-адрес из адресной строки.

    Даже если проблема 500 Internal Server Error является проблемой на веб-сервере, проблема может быть просто временной. Повторное повторение страницы часто проходит успешным.

    Примечание. Если во время процесса проверки у онлайн-продавца появляется сообщение 500 Internal Server Error, имейте в виду, что повторные попытки проверки могут привести к созданию нескольких заказов - и нескольких сборов! У большинства продавцов есть автоматическая защита от таких действий, но это все равно то, о чем нужно помнить.

  2. 2. Очистите кеш браузера . Если есть проблема с кэшированной версией просматриваемой страницы, это может вызвать проблемы с HTTP 500.

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

  1. 3.Удалите файлы cookie вашего браузера . Некоторые проблемы с внутренней ошибкой 500 могут быть исправлены путем удаления файлов cookie, связанных с сайтом, на котором вы получаете ошибку.

    После удаления файлов cookie перезагрузите браузер и повторите попытку.

  2. 4. Вместо этого устраните ошибку как 504 Gateway Timeout .

    Это не очень распространено, но некоторые серверы производят 500 внутренних ошибок сервера, когда на самом деле более подходящее сообщение, основанное на причине проблемы, составляет 504 Gateway Timeout.

  3. 5. Другим вариантом является прямой контакт с веб-сайтом. Скорее всего, администраторы сайта уже знают об ошибке 500, но если вы подозреваете, что они этого не знают, сообщите им, так они помогут вам и себе (и всем остальным).

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

    Совет.
    Если это похоже на то, что сайт полностью отключен, и вы не можете найти способ сообщить об ошибке «Внутренняя ошибка сервера 500» на веб-сайт, это может помочь вашему здравомыслию идти в ногу с отключением в Twitter. Обычно вы можете сделать это, выполнив поиск #websitedown в Twitter, как в #gmaildown или #facebookdown .

  1. 6. Вернуться позже . К сожалению, на данный момент 500 Internal Server Error, без сомнения, является проблемой вне вашего контроля, которая в конечном итоге будет исправлена ​​кем-то другим.

    Если сообщение 500 Internal Server Error появляется во время покупки в Интернете, это может помочь понять, что продажи, вероятно, нарушены - обычно это большой стимул для интернет-магазина, чтобы быстро решить проблему!

    Даже если вы получаете ошибку 500 на сайте, который ничего не продает, например YouTube или Twitter, если вы сообщите им об этой проблеме или, по крайней мере, попробуете, вы можете сделать немного больше, чем просто ждать.

5. Исправление ошибки 500 внутреннего сервера на вашем сайте

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

Существует множество причин, по которым ваш сайт может показывать errors 500 вашим пользователям, но эти наиболее распространены:

  • Ошибка разрешений . В большинстве случаев ошибка 500 внутренних серверов связана с неправильным разрешением одного или нескольких файлов или папок. В большинстве случаев виновато неправильное разрешение на скрипт PHP и CGI . Обычно они должны быть установлены в 0755 (-rwxr-xr-x).
  • Тайм-аут PHP (PHP Timeout) . Если ваш скрипт подключается к внешним ресурсам и тайм-ауту этих ресурсов, может возникнуть ошибка HTTP 500. Правила тайм-аута или лучшая обработка ошибок в вашем скрипте должны помочь, если это является причиной ошибки 500.
  • Ошибка кодирования в.htaccess . Хотя это не так часто, убедитесь, что файл.htaccess вашего сайта правильно структурирован.

Если вы используете WordPress , Joomla или другое управление контентом или систему CMS, обязательно выполните поиск в своих центрах поддержки, чтобы получить более конкретную помощь по устранению ошибки 500 Internal Server Error, также может помочь обновление версии движка.

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

6. Дополнительные способы просмотра внутренней ошибки сервера

В Internet Explorer сообщение, на котором веб-сайт не может отображать страницу, часто указывает на ошибку внутреннего сервера HTTP 500. Ошибка 405 Method Not Allowed - еще одна возможность, но вы можете быть уверены, ища 500 или 405 в заголовке IE.

Когда службы Google, такие как Gmail или Google+, испытывают 500 - внутренняя ошибка сервера, они часто сообщают о временной ошибке (500) или просто 500 .

Когда Центр обновления Windows сообщает о внутренней ошибке сервера, и она отображается как сообщение WU_E_PT_HTTP_STATUS_SERVER_ERROR или как код ошибки 0x8024401F .

Если на веб-сайте, который сообщает об ошибке 500, работает Microsoft IIS, вы можете получить более конкретное сообщение об ошибке:

500,0 - Возникла ошибка модуля или ISAPI.
500,11 - Приложение закрывается на веб-сервере.
500,12 - Приложение перезагружается на веб-сервере.
500,13 - Веб-сервер слишком занят.
500,15 - Прямые запросы для Global.asax запрещены.
500,19 - Неверные данные конфигурации.
500,21 - Модуль не распознан.
500,22 - Конфигурация httpModules ASP.NET не применяется в режиме управляемого канала.
500,23 - Конфигурация ASP.NET httpHandlers не применяется в режиме управляемого канала.
500,24 - Конфигурация олицетворения ASP.NET не применяется в режиме управляемого канала.
500,50 - Во время обработки уведомлений RQ_BEGIN_REQUEST произошла ошибка перезаписи. Произошла ошибка выполнения конфигурации или входящего правила.
500,51 - Ошибка перезаписи произошла при обработке уведомлений GL_PRE_BEGIN_REQUEST. Произошла глобальная ошибка выполнения конфигурации или глобального правила.
500,52 - При обработке RQ_SEND_RESPONSE произошла ошибка перезаписи.Выполнено выполнение исходящего правила.
500,53 - Во время обработки уведомлений RQ_RELEASE_REQUEST_STATE произошла ошибка перезаписи. Произошла ошибка выполнения исходящего правила. Правило настроено для выполнения перед обновлением кэша выходных пользователей.
500,100 - Внутренняя ошибка ASP.

Более подробную информацию об этих кодах, относящихся к IIS, можно найти в коде состояния HTTP HTTP на страницах IIS 7.0, IIS 7.5 и IIS 8.0 .

Ошибки Как ошибка HTTP 500

Многие сообщения об ошибках в браузере похожи на сообщение «Внутренняя ошибка сервера 500», потому что все серверные ошибки, и на такие как 502 Bad Gateway , 503 Service Unavailable и 504 Gateway Timeout .

Также существует множество кодов статуса HTTP на стороне клиента, например, популярная ошибка 404 Not Found . Вы можете увидеть их все в моих списках ошибок кода состояния HTTP .

Разработчики и люди, профессионально работающие с веб-приложениями, боятся 500 Internal Server Error . Оптимальный способ её устранения зависит от сервера и того, что на нём запущено. В данной статье приводятся советы по диагностике и исправлению ошибки 500 .

Диагностика ошибки 500 Internal Server Error

Важно помнить, что эта ошибка происходит на стороне сервера. Это значит, что HTML-код , выполняемый на стороне клиента, а также JavaScript или любые другие запущенные в браузере объекты, не могут быть источником . Само название (Internal Server Error – ‘внутренняя ошибка сервера’ ) говорит о том, что ошибка происходит на сервере.

Устранение ошибки на популярных платформах

Многие пользователи устанавливают на свой сервер популярные CMS-системы , такие как WordPress , Joomla , Drupal и они не должны вызывать ошибку 500 , если всё настроено правильно. Однако она всё равно всплывает – из-за несовместимости версий, некачественных установок или сбоя прав доступа на сервере.

Вот некоторые распространённые проблемы, которые могут вызывать подобную ошибку в часто используемых CMS :

  • Если вы только что обновили движок до новой версии, вероятно, обновление прошло с ошибками и необходимо провести его повторно. Скорее всего, на сайте разработчика есть инструкции, как это правильно сделать.
  • Если вы только что активировали новый плагин или новую тему, стоит попробовать отменить эти изменения. Даже профессионально написанные плагины могут конфликтовать с другими и вызывать 500 Internal Server Error nginx
  • Если вы обновляли CMS , старые плагины и темы могут быть с ней несовместимы. Единственное, что можно сделать в таком случае - отключать их по очереди, пока ошибка 500 не исчезнет.
  • Неправильно заданные права доступа на сервере или ошибки в файле .htaccess . Серверу не удаётся получить доступ к скриптам, файлам и другим ресурсам, поэтому он выдаёт ошибку.

Когда причиной ошибки 500 Internal Server Error являются скрипты и плагины, лучше всего искать ответы на сайтах их разработчиков.

Устранение ошибки на стороне серверных скриптов

Другой причиной ошибки 500 Internal Server Error может стать разработка и тестирование собственных скриптов.

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

  • Настройка прав на сервере : часто неверная настройка прав доступа к файлу или папке приводит к тому, что сервер выдаёт . Из-за того, что ему не удаётся запустить скрипт. Выясните, какие права должны быть настроены, и выставьте их соответствующим образом.
  • Превышено время ожидания : возможно, истекло время ожидания ответа от PHP или другого серверного скрипта. Это происходит из-за того, что недоступен определённый ресурс или коде была допущена ошибка, запускающая бесконечный цикл.
  • Превышено время ожидания соединения с сервером: если сервер был занят, перезагружался или потерял соединение, скрипт может выдать ошибку 500 Internal Server Error . Возможно, в следующий раз ошибки не будет. Но если ошибка появляется при тестировании, велика вероятность того, что она встретится и пользователям.
  • Ошибки в файле.htaccess: в некоторых случаях ошибку 500 может вызывать код, прописанный в файле .htaccess .
  • Ошибки в скрипте: если ошибку выдаёт скрипт, можете запросить у него подробную информацию об ошибке. К примеру, в PHP можно включить вывод ошибок на экран или в лог-файл, добавив директиву display_errors . По умолчанию среда выполнения может скрывать ошибки, но это не очень удобно для отладки программы.

Попросите помощи у системного администратора

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

Если скрипт запускается на сервере сторонней организации, она может помочь вам в следующем :

  • Предоставить документацию о своём сервере и возможных причинах ошибки 500 . В зависимости от используемой операционной системы и настройки оборудования, данная ошибка может возникать по разным причинам.
  • Попросите службу поддержки хостинга посмотреть лог-файлы с ошибками - системный администратор сможет определить, был ли сервер во время возникновения ошибки загружен или вовсе «упал ».

Ошибку 500 Internal Server Error довольно легко устранить

500 Internal Server Error — как исправить ? В большинстве случаев причины возникновения ошибки 500 легко исправляются. Проблема заключается в том, что без конкретной информации определение причины возникновения сбоя усложняется. Легче всего справиться с ошибкой, когда разработчик выяснит, что изменилось перед возникновением ошибки.

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

Перевод статьи “500 Internal Server Error: What It Is And How To Fix It ” был подготовлен дружной командой проекта .

Хорошо Плохо

При плохой системной конфигурации,работа сервера может пойти наперекосяк,и тогда Hypertext Transfer Protocol (HTTP) показывает сообщения об ошибках.В частности,сообщение об ошибке «HTTP 500 Internal server error» обычно происходит,когда администратор сайта пытается загрузить файл на сайт.Для администраторов,которые управляют сервером,такая ситуация не должна быть проигнорирована,так как страдают конфигурационные файлы системы.Чтобы исправить эту ошибку,требуются усилия команды,и они начинаются с конечного пользователя,уведомлением администратора сервера и заканчивается хостингом сайта,что бы принять меры.500 Internal Server Error-это общее сообщение об ошибке, выдаваемое при отсутствии более конкретных подходящих сообщений.

Как правило,для решения этой проблемы необходимо воспользоваться помощью лог-файлов,которые расположены в следующей папке:
=>/var/log/message
=>/var/log/httpd/error_logs (/var/log/lighttpd/error_log /var/log/httpd/error_log)

Так что вы даже можете быть удивлены,почему ваш PHP-скрипт выдаёт внутреннюю ошибку сервера 500.Эта ошибка возникает только из-за программного обеспечения веб-сервера.Однако,просмотрев журналы можно не обнаружить множество деталей.Эта проблема может быть вызвана:

  • Уродливым php-cgi-скриптом
  • Недопустимая директива в.htaccess или других config file
  • Ограничения,наложенные файловой системы и программным обеспечением сервера (например,файл php журнала размер 10 Мб)
  • Отсутствует php.ini (или не может прочитать файл php.ini)

В большинстве случаев она является недействительной директивой.htaccess.Однако недавно я наткнулся на web server w/o/etc/php.ini. Я давно настроил этот сервер (Apache в chroot jail). Поэтому нужно сохранять два файла один за пределами сервера,а другой внутри сервера:
=>/etc/php.ini
=>/chroot/etc/php.ini <- этот файл отсутствует

Многие скрипты могут открыть этот файл на лету,чтобы получить правильные директивы конфигурации. Если этот файл не найден, вы получите сообщение об ошибке 500. Потребовалось некоторое время, чтобы выяснить эту проблему.

Причины и решения:

1 - система безопасности (mod_security)

mod_security-это система безопасности,которая работает на webserver для выявления типичной хакерской деятельности,если они пытаются сделать что-то на сервере.Она ищет структуры, широко используемые хакерскими скриптами и слова,и если правило срабатывает,она отправляет ошибку 500,и даже может временно заблокировать IP-адрес посетителя.
В mod_security есть правила,которые будут перечислены в журналах ошибок *и* в mod_security журнале.

2 - suexec

Если сервер настроен на использование php_suexec (который предназначен для обеспечения безопасности чуть лучше в том, как хранятся файлы и разрешения управляются с PHP скриптами), то вам не позволят установить какие-либо файлы или папки в уровни разрешений «777» («world-writable). Максимально допустимый в таких случаях, как правило, уровень разрешений 755.
В этой ситуации, если вы установите на папку уровень разрешения «777», сервер выдает 500 Internal Server Error и блокирует любые скрипты или файлы в этой папке.Заблокированные папки будут перечислены в журналах.Таким образом, в этом случае вы должны использовать уровень разрешения 755 вместо 777 при чтении инструкции, которые предполагают использование уровня разрешений «777».

3 - ошибки синтаксиса.htaccess .htaccess ограничений, налагаемых main server configuration

Если ваш сервер настроен на ограничение использования определенных директив в файлах.htaccess, но вы используете что-то не разрешенное,то будет срабатывать “500 Internal Server Error” , и ваш сайт будет недоступен, пока вы не решите проблему.
Точные правила будут записаны в журналы,например внутри каталога subdomian,убедитесь в том, что.htaccess находится в этом каталоге.

# Различные правила перезаписи.

RewriteEngine on
++++++++++++++++++++++
#Если ваш сайт работает в VirtualDocumentRoot на http://example.com/,
# раскомментируйте следующую строку:
RewriteBase / <-удалить хэш (#)

4 - ошибки PHP

Иногда,когда PHP-скрипт обнаруживает ошибку,либо из-за истечения времени ожидания или синтаксическая проблема,или что-то ещё хуже,как логическую проблему, он *может* выдать триггер 500 внутренняя ошибка сервера. Он может выдавать эту ошибку не всегда, но может.

5 - плохое содержание configure.php

Если URL-адреса или пути,или что-нибудь ещё,находятся в вашем файле configure.php -это информация для другого сервера,или не правильно для *вашего* server,то для многих как ни странно,могут возникнуть проблемы, в том числе, возможно и ошибка 500. Однако, как правило,это будут очень разные симптомы.Просто убедитесь, что Вы не скопировали файлы configure.php с одного сервера на другой, даже localhost.

Страницу с кодом ответа 500 веб-сервер возвращает, когда не может обработать запрос из-за ошибок в файлах сайта.

Внешний вид ошибки 500 зависит от того, чем она вызвана. При неполадках в скриптах сайта отобразится пустая страница, сообщение HTTP ERROR 500 или текст обработчика PHP.

Если проблема в файле.htaccess - сообщение Internal Server Error.

Часто ошибку 500 можно легко устранить даже не имея знаний в области веб-разработки. О том, как это сделать, расскажем далее.

Ошибки в файле.htaccess

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

Ошибки в скриптах сайта

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

Функция для исследования работы сайта. Она позволяет узнать время ответа сервера, код ответа, посмотреть текст возникших ошибок и многое другое.

Нажмите сочетание клавиш Ctrl+Shift+I или используйте меню браузера:

  • Mozilla Firefox - «Веб-разработка» → «Инструменты разработчика»;
  • Google Chrome - «Дополнительные инструменты» → «Инструменты разработчика»;
  • Opera - «Разработка» → «Инструменты разработчика».

Перейдите во вкладку «Сеть (Network)» . На ошибку 500 указывает соответствующее число в колонке «Статус» .

Статус пустой страницы может быть и 200 (Ok). В таком случае проверьте, есть ли содержимое в индексном файле сайта, очистите кеш вашей CMS. Если ранее сайт работал корректно, его из резервной копии.

Вывод ошибок на сайте

Вывод ошибок PHP на хостинге по умолчанию выключен. Чтобы увидеть их текст, добавьте в файл.htaccess : php_value display_errors 1 и обновите страницу сайта.

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

Замените в файле wp-config.php строку define(‘WP_DEBUG’, false); на define(‘WP_DEBUG’, true);

Измените значение переменных debug и error_reporting в configuration.php на: public $debug = "1"; и public $error_reporting = "maximum";

В конфигурационном файле по пути ~/public_html/bitrix/php_interface/dbconn.php замените значение переменных DBDebug и DBDebugToFile на: $DBDebug = true; и $DBDebugToFile = true;

В файле.env измените APP_DEBUG=false на APP_DEBUG=true

Алгоритм устранения ошибки можно найти в интернете, поместив ее текст в строку любой поисковой системы. Если с помощью найденной информации возобновить работу сайта не получится, его из резервной копии. Наши специалисты могут помочь с восстановлением. Для этого направьте обращение из раздела «Поддержка» Панели управления.

Иногда ошибка не выводится на странице или возникает периодически: ее тяжело отследить. Чтобы узнать текст таких ошибок, записывайте информацию о них в файл - журнал ошибок PHP. его, добавив в.htaccess строку: php_value error_log /home/username/domains/domain.ru/php_errors.log и обновите страницу сайта.

Откройте создавшийся файл журнала с помощью Файлового менеджера в Панели управления. Чтобы просматривать возникающие ошибки в реальном времени, отметьте опцию «Включить автообновление».

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

Для устранения некоторых ошибок не требуется специальных знаний. Рассмотрим самые распространенные.

Нехватка оперативной памяти

Ошибка с текстом Allowed memory size возникает из-за нехватки оперативной памяти для выполнения скрипта: PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 81 bytes) in /home/username/domains/domain.ru/public_html/somescript.php

Чтобы исправить ее, лимит оперативной памяти, добавив в файл.htaccess директиву:

Php_value memory_limit 512M

Вместо «512» укажите необходимый объем памяти. Максимальное значение ограничивается тарифом.

Текст Out of memory означает , что достигнут лимит оперативной памяти по тарифному плану:

PHP Fatal error: Out of memory (allocated 39059456) (tried to allocate 262144 bytes) in /home/username/domains/domain.ru/public_html/somescript.php

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

Ошибки в CMS

При обновлении CMS случаются синтаксические ошибки:

PHP Parse error: syntax error, unexpected "[", expecting ")" in /home/username/domains/domain.ru/public_html/wp-content/plugins/wordpress-23-related-posts-plugin/config.php on line 130

Это происходит из-за того, что новые функции CMS не поддерживают устаревшие версии PHP. Чтобы исправить ошибку, измените версию PHP для сайта на более современную в разделе «Сайты и домены» → «Управление сайтами».

Если предыдущая рекомендация не помогла, обратите внимание на путь до неработающего скрипта: там может быть указан каталог плагина или темы. Чтобы исправить ошибку, отключите их. Для этого переименуйте папку, в которой они расположены. После устранения ошибки авторизуйтесь в административной части сайта и измените тему или переустановите плагин.

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



Рекомендуем почитать

Наверх