Http 500 внутренняя ошибка сервера как исправить. Ошибка Internal Server Error: что это и как с ней бороться

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

Что это за проблема 500 Internal Server Error в WordPress?

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

Проверка целостности файла.htaccess в WordPress

Чтобы выполнить проверку, необходимо файл.htaccess переименовать, например, в.htaccess_fix. Для этого вы должны будете зайти на ваш сайт с помощью FTP. После этого найдите этот файл в корне сайта, он будет возле директорий wp-admin, wp-content.

Когда вы выполнили переименование, снова попробуйте загрузить сайт, чтобы убедиться, что ошибка исчезла. Теперь убедитесь, что вы сохранили изменения в пункте «Постоянные ссылки», это позволит сгенерировать новый.htaccess файл с корректными правилами перезаписи ссылок.


Файл.htaccess

Увеличиваем память PHP

Ошибка 500 Internal Server Error может возникать по причине переполненной памяти PHP, которая выделяется для пользователя. Для этого следуйте несложным пунктам:

  1. Создайте новый тестовый документ с названием php.ini.
  2. Напишите в нем код – memory=64MB.
  3. Сохраните его.
  4. «Залейте» его в папку /wp-admin/, по ФТП.

Проблема, связанная с ошибкой 500 Internal Server Error, кроется в плагинах WordPress

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


Окно с настройкой плагинов

При входе в админ-панель Joomla появляется ошибка 500 Internal Server Error

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

Найти причину можно с помощью журнала ошибок, который хранится на сервере. Открыв файл «error.php», который находится в директории «logs», можно обнаружить нарушения в работе модулей, которые здесь сохранились.

Еще одной причиной может быть невозможность делать запись в каталогах «tmp» и «logs». Возможно, нужно будет установить права в настройках для этих каталогов. Проверьте правильность путей к этим каталогам «tmp» и «logs» в файле, который отвечает за их конфигурацию – «configuration.php». Рекомендуется указать верные пути для них вручную.

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

Другие причины появления ошибки 500 Internal Server Error


Ошибка Internal Server Error

Ошибка 500 может появляться из-за конфликтов в работе с CGI-скриптами. Для этого существует 3 правила, которые могут быть не соблюдены:

  • Каждая строка должна заканчиваться в формате UNIX (n), но не Windows (rn). Чтобы выдержать это правило, необходимо загрузку производить по протоколу FTP, с режимом ASCll.
  • В процессе работы CGI-скрипта могут появляться HTTP-заголовки с неверными ответами. Нужно пересмотреть содержимое системного файла «error log» на наличие ошибок.
  • Цифровое значение для скриптов CGI, файлов и папок должно быть установлено в 0755. Эта запись дает право совершать настройки исключительно владельцу сайта, что является дополнительной мерой безопасности.

Причина ошибки 500 – неверно настроены права доступа

При помощи FTP-клиента (годен для этого FileZilla) нужно проверить права доступа к папкам и файлам на сервере. Сначала необходимо проверить, соответствуют ли настройки корректной работе на сервере. Проверьте настройки для каждого типа отдельно. Они должны соответствовать следующим значениям:

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

Ошибка 500 (Internal Server Error) является довольно распространенным явлением на просторах интернета и является, в большинстве своем, внутренней. Нередко такая проблема доставляет неудобства пользователям, которые пытаются зайти на сайт Gosuslugi.ru. Особенно, это происходит во времена массового наплыва юзеров, пытающихся воспользоваться порталом Госуслуги, с абсолютно разными бытовыми вопросами (запись ребенка в школу/поликлинику, оплатить штрафы ГИБДД, оформить загранпаспорт, оплатить налоги и т.д.).

Причины возникновения ошибки 500

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

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

Бывают и такие причины возникновения данной проблемы:

  • Неправильно написанные скрипты cgi;
  • Использование DNS, VPN, прокси-сервера;
  • Использование плагинов и расширений;
  • Продолжительная работа скрипта;
  • Открытые или неверные права доступа;
  • Проблемы с htaccess;
  • Недостаточно памяти для работы кода;
  • Неполадки с WordPress;
  • Неполадки с Joomla и другими CMS.

Исправляем ошибку 500, если вы обычный пользователь

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

  1. Обновить страницу (CTRL+F5);
  2. Отключить либо переустановить плагины и установленные расширения в браузере.
  3. Отключить тему оформления веб-браузера, либо полная переустановка браузера (с удалением кэша, кукис и тд). Поможет программка CCleaner .
  4. Поменять страну в настройках браузера.
  5. Использовать прокси-сервер или VPN.
  6. Проверить настройки DNS, установленные Вашим интернет-провайдером, либо, если используете онлайн-DNS, проверить их на вирусы.
  7. Дождаться выполнения технических работ на сайте Госуслуги. Данный сайт является государственным, поэтому можно позвонить в техническую поддержку.
  8. Опробуйте войти на портал через мобильное приложение Госуслуги, доступное как для Андроид , так и для Apple .

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

Онлайн поддержка — чат

Что делать администраторам сайта

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

  1. Необходимо найти в корневой папке системы файл «error log» и проверить его на предмет работоспособности. Также, можно попробовать поставить права доступа на коды cgi — 0755 .
  2. Существуют ограничения по времени ответа от сервера, за которое скрипт должен успеть проделать определенную работу и завершить ее. Советуем выставить больший интервал для сервера. Воспользуйтесь необходимыми программами, которые имеют свойство находить замедленные участки кода в скрипте.
  3. Если установлены неверные значения для скриптов и их прав доступа — сервер будет их блокировать. Воспользуйтесь софтом, который позволяет изменить права на определенные папки. Для скриптов наиболее оптимальным значением является — 600. Все остальные файлы должны иметь права доступа 644, а каталоги — 755.
  4. Файл «.htaccess» , в случае нарушения структуры, имеет свойство выдавать неправильные (ошибочные) директивы.

Для исправления данной проблемы необходимо отыскать «.htaccess» в системе. После обнаружения файла, его нужно переместить (желательно, на другой диск), либо же воспользоваться резервным копированием и удалить файл.

  • Во время массовых наплывов пользователей на сайт Госуслуг, хостингом было замечено, что некоторые скрипты хотели использовать слишком много памяти. Поэтому, для таких аккаунтов доступ блокировался и выдавал ошибку 500. Исправить это можно одним способом — проверить на предмет работоспособности код, за счет чего скрипт и потребляет огромное количество памяти.
  • Самая простая и крайняя мера — отключить WordPress. Но, данная мера, всё же, является временной, так как при отключении WordPress могут “потеряться” некоторые плагины.
  • Данная проблема распространена у администраторов, которые пытаются зайти в свой профиль на панели администрирования Joomla. Советуем зайти в журнал неполадок («logs») и отыскать «error.php». Необходимо проверить данный файл на работоспособность. Также, рекомендуем выставить права доступа — 777. Если ничего не помогло, рекомендуется по очереди отключать все существующие плагины.
  • Закажите у мастеров вирусную проверку своих файлов на хостинге. Такое бывает очень часто — вирусы просто «съедают» некоторые файлы.

Если не удается решить данную проблему самостоятельно, советуем обратиться в службу поддержки.

Заключение

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

Достаточно часто владельцы хостингов мучаются из-за постоянного возникновения сообщения об (Internal Server Error). Она, как это называется, многим попросту отравляет жизнь. Сейчас мы попробуем кратко разобраться в сути самой ситуации и посмотрим, как же можно избавиться от появления ошибки в будущем.

Ошибка Internal Server Error: что это?

Итак, начнем, пожалуй, с самого значения этого словосочетания. В системе (каталоге) ошибок Windows (и не только) есть ошибка под номером 500, отвечающая Internal Server Error. Перевод этого словосочетания означает внутреннюю ошибку сервера, связанную со статусом

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

Причины возникновения ошибки

Говоря об ошибке Internal Server Error в самом широком понимании, стоит учитывать, что возникать она может на множестве сайтов или ресурсов, написанных с помощью совершенно разных CMS. Тут, кстати, нужно разграничить причины ее возникновения.

Очень часто такая ситуация может наблюдаться на сайтах типа WordPress, OpenCart, Joomla и др. Если же структуры управления, подобные WordPress, при построении сайта не используются, возможно, причина кроется в том, что на самом хостинге возникают сбои при подключении неправильных PHP-расширений, или сайт после запроса возвращает некорректные HTTP-заголовки, которые не могут быть распознаны вашим сервером.

Не менее распространенной причиной возникновения ошибки Internal Server Error можно назвать отсутствие корректных прав доступа. Так, например, если на PHP файлы скриптов, которые размещены на хостинге, имеют права доступа 777, очень может быть, что их исполнение попросту блокируется сервером, вследствие чего и выдается сообщение об ошибке.

Также одной из причин может быть достаточно долгая работа скриптов. Дело в том, что PHP-ограничения по времени исполнения действуют не только в отношении хостинга, подобные лимиты могут выставляться и со стороны сервера. Иными словами, это несколько напоминает тайм-аут операции. Когда сервер в течение определенного времени не получает ответа на запрос, он попросту блокирует исполнение скрипта.

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

Наконец, одна из самых распространенных ситуаций возникновения ошибки Internal Server Error - это содержание некорректных директив в файле.htaccess (кстати, при работе с движком WordPress это проявляется наиболее часто). Вот теперь мы вплотную подошли к поиску решения для каждой конкретной ситуации.

Ошибка Internal Server Error: как исправить простейшими способами

Для начала посмотрим, что можно сделать при обнаружении неправильных прав доступа. В данном случае позволяют редактировать содержимое абсолютно всем, что, несомненно, сказывается на безопасности. В такой ситуации необходимо их изменить, применив к папкам значение 755, к файлам скриптов - 600, а ко всем стальным файлам данных - 644.

При слишком долгой работе исполняемого скрипта можно попробовать увеличить время ожидания, правда, тут есть одна загвоздка. Такое решение может сработать на выделенном сервере или VPS (Virtual Private Server), а в случае никакого эффекта не будет.

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

Теперь несколько слов о файле.htaccess. Дело в том, что он предполагает использование очень строгого синтаксиса, если при проведении настроек были допущены ошибки или некоторые неточности, избежать появления ошибки Internal Server Error не удастся. Тут нужно поступить следующим образом. Для начала нужно проверить наличие самого файла в корневой директории сайта, после чего, сделав его резервную копию, удалить целиком и полностью. Если после такой процедуры сайт снова станет работоспособным, значит проблема именно в файле.htaccess, который придется проверить на наличие ошибок в синтаксисе.

Проблемы с движком WordPress

С WordPress дело обстоит хуже. Дело в том, что этот движок способен перезаписывать оригинальный файл.htaccess, отвечающий за управление доступом к файлам и папкам хостинга, а ведь оригинальный файл должен создаваться всего один раз, и тем более не в WordPress!

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

В некоторых случаях может потребоваться обновить WordPress до последней версии и отключить функцию перезаписи файла. Для начала скачиваем на компьютерный терминал оригинальный файл.htaccess, затем входим на сайте в папку по пути /wp-admin/includes/ с последующей загрузкой файла misc.php, который необходимо открыть, скажем, в стандартном «Блокноте» (или любом другом текстовом редакторе) и найти строку функции «function save_mod_rewrite_rules». Теперь в самой функции переходим к строке «return insert_with_markers($htaccess_file, "WordPress", $rules);» и заменяем ее на «return true;» (естественно, все команды прописываются без кавычек). Остается только сохранить изменения и загрузить новый файл на хостинг с заменой старого файла misc.php.

Недостатком такого метода является только то, что в данном случае отключается обновление WordPress. При подключении плагинов они работать, естественно, не будут.

Заключение

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

Пользуетесь FileZilla или другим подобным FTP менеджером? Тогда ошибка «HTTP ERROR 500 » может возникнуть по простой банальной причине. Нет, дело совсем не в том, что плохой FTP менеджер, можно просто сказать, что это небольшой баг, хотя багом его назвать сложно.

Такая ошибка (не всегда) может возникнуть, когда вы редактируете файлы напрямую через ту же FileZilla, правой кнопкой мыши – просмотр и правка . FTP менеджер каким то образом при правке файла изменяет права на файлы, к примеру на 777 . Хостинг или сервер в свою очередь, запрещает доступ к сайту, чтобы злоумышленник не мог нанести вред сайту, потому что с такими правами можно извне внедрить какой-нибудь скрипт на стороне сервера.

Решение проблемы довольно простое – вспомнить какой файл последний раз редактировали , это может быть файл вашей темы, header, например, посмотрите какие права у данного файла, должны стоять 644 . Даже если стоит такие атрибуты, все равно лучше попробуйте заменить данный файл на другой. Мне это помогло, заменил всего один header.php.

Права доступа на файлы и папки

Права доступа на файлы и папки должны быть такими:

  • Для папок – 755;
  • Для файлов – 644;
  • Для исполняемых скриптов – 600.

Как изменить права доступа на файлы и папки

Изменить права доступа на файлы и папки можно несколькими путями:

  1. Через FTP менеджером FileZilla, правой клик мыши – «права доступа к файлу»;
  2. Скачать файл на ПК и через Total Commander сменить права доступа, затем обратно закачать файл на хостинг;
  3. В большинстве хостингов можно редактировать права доступа, необходимо просто найти данный значок на панели управления и выделить файл к которому необходимо изменить права доступа.

Другие причины 500-той ошибки

  • Удалите файл «. htaccess », затем посмотрите исчезла ли ошибка «500». Возможно в этом файле содержатся директивы непонятные вашему серверу;
  • Долгая или бесконечная работа скрипта, из-за чего хостинг принудительно завершает работу и выводит на экран данную ошибку. На сервере по умолчанию установлен лимит на время ожидания выполнения скрипта, который можно увеличить при необходимости;
  • Слишком малое отведенное количество виртуальной памяти хостинга для совокупности сразу всех одновременно выполняющихся скриптов. Это второе ограничение и выделяется общее количество памяти не на один определенный PHP файл, а на все сразу.

Альтернативное решение проблем: На любом хостинге вы можете посмотреть лог ошибок, например, обычно он содержится в файле — error.log . Если в нём не разбираетесь, в решении проблем может помочь служба поддержки хостинга и направит вас в нужную сторону для решения ошибки «HTTP ERROR 500». Как видите, вам не обязательно разбираться в логах если у вас на

Страницу с кодом ответа 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, достаточно изучить их текст и принять меры, указанные в статье. Если вам не удается справиться с ней самостоятельно, обратитесь в службу поддержки.



Есть вопросы?

Сообщить об опечатке

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