Http 500 внутренняя ошибка сервера что делать.

31.07.2019

Ошибка 500 (Internal Server Error) - внутренняя ошибка сервера - 4.2 out of 5 based on 9 votes

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

Часто такая ошибка возникает в таких CMS как WordPress, Joomla, Битрикс, OpenCart и других. Поэтому мы рассмотрим самые распространенные причины возникновения данной ошибки и способы ее устранения.

Что означает ошибка 500

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

Вообще причин возникновения ошибки 500 может быть огромное множество, рассмотрим те которые встречаются чаще всего.

Стандартная страница ошибки выглядит так:

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

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

Решение: Проверьте права доступа на папки и файлы сайта. Для папок рекомендованы права доступа 755, для исполняемых скриптов 600, а для всех остальных файлов 644.

2. Очень долгая работа скрипта. На хостингах, кроме PHP ограничений времени на исполнение скрипта, имеется и ограничение со стороны сервера. Поэтому если сервер не получает ответ в течении определенного количества времени, установленного в его конфигурации, работа скрипта принудительно завершается и мы видим сообщение об ошибке 500.

Решение: Попытаться оптимизировать работу скрипта. Можно так же увеличить время ожидания сервера, но только если у вас VPS или выделенный сервер, на виртуальном хостинге это врат ли удастся сделать.

3. В файле.htaccess содержаться не правильные или не поддерживаемые сервером директивы. Файл.htaccess имеет очень строгий синтаксис и если вы производя определенные настройки допустили какие то ошибки то вам также будет показана ошибка 500 Internal Server Error.

Решение: Посмотрите имеется ли в корневой папке сайта файл.htaccess. Если он там есть сделайте его резервную копию и попробуйте вовсе удалить. Если после этого сайт заработал значит причина в нем.

Еще можно посмотреть сведения об ошибках в файле куда записываются все ошибки сервера, это файл error.log. В случае указания неверной директивы в файле.htaccess в файле error.log вы найдете примерно такие строки:

/home/UXXXXX/vash-sait.ru/www/.htaccess: Invalid command "RewritRule", perhaps mis-spelled or defined by a module not included in the server configuration

4. Для своей работы скрипт хочет получить слишком большое количество памяти. Данная причина может быть на виртуальном хостинге, где кроме лимита памяти установленного в PHP отслеживается общее количество памяти потребляемое скриптами. Если данное потребление слишком велико, т. е. больше чем отведено по вашему тарифному плану, то работа скрипта завершается и выдается сообщение об 500 - й ошибке. Сделано это для предотвращения чрезмерной нагрузки на сервер со тороны каждого аккаунта виртуального хостинга.

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

1) Наиболее распространенная причина появления ошибки 500 internal server error, это некорректное содержимое файла.htaccess. В этом файле не должны присутствовать специальные php-директивы, по типу таких:

php_value name value
php_flag name on|off

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

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

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

2) Если ошибка возникает в результате перехода на определенную страницу или каталог, проверьте установленные права на файлы и каталоги. Для файла или страницы они должны быть – 644, для каталога – 755.

Важно! Ни в коем случае права не должны быть – 777, так как это полный доступ к файлу или папке, что угрожает безопасности вашего сайта!

3) Если такая ошибка возникает при переходе на файлы такого типа:

*.pl, *.cgi (Perl- или CGI-файл)

то обязательно проверьте указанный в скрипте путь к Perl. Этот путь можно найти на главной странице вашей cPanel.

Важно! GGI или Perl-скрипты обязательно должны быть загружены на хостинг в формате ASCII, а также выставлены права 755 на каталоги в которых они находятся.

Не соблюдение этих требований и приводит к ошибке 500 internal server error.

4) Каждый хостинг дает определенные ограничения для использования своих ресурсов. В случаи их превышения, может возникать данная ошибка. Особенно это свойственно сайтам, когда вышеописанная проблема появляется периодически.
Решение простое. Сменить тарифный план на более мощный или перейти на выделенный сервер.

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

Также можно самостоятельно провести анализ лог-файлов. Обычно эти данные хранятся в файле error_log (error.log).

Вот и все о чем я хотел рассказать в данной статье. Если остались вопросы, задавайте в комментариях.

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

Не стоит паниковать раньше времени, брать в руки молоток или биться головой об клавиатуру – доктор Ай-Тупит спешит на помощь, чтобы исправить ситуацию с положением, когда возникает надпись «500 ошибка internal server error»!

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

Тем не менее, доктор Ай-Тупит предлагает вам познакомиться с двумя путями, позволяющими выйти из этого положения.

Как справиться с ситуацией обычному пользователю

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

  • Возникла надпись «ошибка 500 – внутренняя ошибка сервера». Попробовать выполнить перезагрузку нужной странички. Желательно не торопиться – пойти бахнуть пивка, съесть бутерброд с черной икрой, почить газетку – возможно за эти три минуты владелец ресурса сам обнаружит неприятность и решит проблему со своей стороны.
  • Следующий вариант действий при возникновении не самой приятной надписи «код ошибки 500 не удалось выполнить запрос» – попытаться выключить и заново включить свой любимый компьютер. Существует вероятность, что комп поразили различные вредители (не тараканы!), поэтому нужно запустить антивирусник и выполнить анализ системы. Кстати именно это действие позволяет дать ответ на еще один вопрос – что за ошибка в контакте «500 internal server error»?

Последний вариант требует от пользователя пойти на определенный риск – снизить стандартную защиту системы для того, чтобы попытаться обойти внутреннюю ошибку сервера – ошибку 500. Но что не сделаешь ради того, чтобы скачать с ресурса новую серию «Смешариков» – правда ведь? Итак, для этого потребуется:

  • Через меню «Пуск» перейти в раздел администрирования.
  • Поочередно отметить два пункта: «Internet Information Services», «Default Web Site».
  • Отключить функцию анонимного доступа и попытаться выполнить переход на требуемый интернет-ресурс.

Решаем проблему вместе с владельцем сайта

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

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

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


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

Ошибка 500 internal server error – внутренняя ошибка сервера, говорящая о неработоспособности какого-либо из его компонентов. В сообщении об ошибке не указывается конкретная проблема и не предлагаются способы её решения. Ситуация описывается в целом: сервер работает, но в его конфигурации или в каком-то малозначимом скрипте допущена фатальная ошибка, из-за которой обработка запросов невозможна и сервер не отвечает.

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

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

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

  • Долгое выполнение скрипта
  • Превышение лимита оперативной памяти
  • Синтаксическая ошибка в
  • Неправильные права доступа у файлов

Методы решения

Превышение лимитов

Первым делом нужно проверить, нет ли на сайте скриптов, которые слишком долго выполняются. Стоит помнить, что абсолютно все хостинг-провайдеры устанавливают жесткие ограничения на время выполнения, чтобы снизить нагрузку на собственные сервера. Если скрипт на сайте «долго думает », его просто завершают, дабы не страдали другие сайты на сервере. Результат принудительного завершения – ошибка с кодом 500. Если веб-мастер имеет непосредственный доступ к серверу, на котором расположен сайт, выявить скрипты с долгим выполнением будет легко. Достаточно отследить время выполнения каждого и найти нужный, возможно, он будет не один. А если удалять найденный скрипт никак нельзя, не будет проблемой поднять лимит на время выполнения в конфигурации сервера. Другой случай, если сайт расположен на виртуальном хостинге: без помощи технической поддержки решить проблему не удастся. Однако, администрация большинства хостингов редко идет на встречу – скорее всего, владельцу просто предложат перейти на тариф подороже.

Помимо лимита на время, существует и лимит оперативной памяти, которая доступна для выполнения скрипта. Если сайт построен на базе сложного и тяжелого движка с массой различных функций, наверняка, он будет резервировать для своей работы довольно большой объем ОЗУ сервера. Естественно, на хостинге она не бесконечная. Если вы используете бюджетное решение то на одном сервере администрация хостинга может размещать несколько сотен сайтов, поэтому если какой-то один будет потреблять много ресурсов, все остальные начнут работать гораздо медленнее. Лимит памяти так же, как и временной, указывается в конфигурации сервера. Имея прямой доступ, лимит можно повысить. Если же доступа к серверу нет, придется просить администрацию найти «прожорливый» скрипт и сообщить о нем владельцу. После нахождения тяжелого скрипта можно попытаться его оптимизировать, обратившись к программисту или самостоятельно удалив из кода ненужный функционал.

Ошибка в.

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

Можно попробовать просто удалить данный файл и посмотреть на результат, так как его наличие не обязательно, это не должно повлиять на работу сайта. Если после удаления ошибка 500 исчезла, нужно восстановить файл и начать поиск ошибки. Найти ошибку в. можно с помощью специального лог-журнала “error.log “ в панели управления, не редко хостеры предоставляют к нему доступ. В данный журнал записываются все произошедшие во время работы ошибки, наверняка, через него получится узнать причину. В случае, если. содержит неправильную директиву, журнал должен содержать примерно такой лог:

Из данного лога следует, что проблема вызвана директивой “RewritRule ”. Это очевидная синтаксическая ошибка. Название директивы было напечатано неправильно – пропущена одна буква – вместо “RewtiteRule ” получилось “RewritRule ”, соответственно, вся конструкция оказалась неверной. Файл. не допускает даже столь незначительных огрехов, выдавая ошибку с кодом 500.

Неправильные права доступа

Из-за неправильно выставленных прав доступа скрипт может не работать. Однако, ошибка 500 возникает в противоположном случае: если скрипт имеет излишне высокие права с кодом 777. Объясняется это мерой безопасности самого сервера. Редкому скрипту по-настоящему нужны абсолютные права, между тем, такой скрипт может оказаться вредоносным шеллом, который встроит в сайт ненужный код или вовсе удалит все расположенные на сервере файлы вместе с ним самим, выполнив команду -rm -rf . Если уж и решаться заливать на сайт php -файл с правами 777, то только от очень проверенного разработчика, сомнений в добросовестности которого нет. Кроме того, зачастую сами хостеры блокируют возможность выдачи файлам абсолютных прав, что, несомненно, правильно.

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

    Директории – 755

    Для активных скриптов – 600

    Для обычных файлов – 644

В серверный файловых менеджерах с GUI интерфейсом установка прав выполняется в контекстном меню:

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

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