Ошибка авторизации код 500. Что означает ошибка сервера

Ошибка 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) - не паникуйте и вспомните, какие изменения были сделаны перед её возникновением, или зайдите в личный кабинет управления хостингом и ознакомьтесь с логами ошибок - скорее всего в них написано что именно вызывает ошибку 500.

Чаще всего ошибку вызывает:

  1. Тема оформления
  2. Плагин(ы)
  3. Файл.htaccess

Давайте рассмотрим эти варианты по порядку.

1. Тема оформления

Вы нашли или приобрели новую понравившуюся вам тему оформления, но после её установки при входе на сайт выдаётся ошибка о его некорректной работе (ошибка 500). При входе в консоль управления тоже наблюдается ошибка 500.

Для восстановления работы сайта можно воспользоваться одним из следующих способов:

1.1. FTP

Зайдите на FTP вашего сайта и найдите папку в которой находятся ваши темы оформления. По умолчанию это /wp-content/themes/

Переименуйте, удалите или исправьте текущую тему оформления сайта.

Примечание : достаточно добавить лишний символ в имя папки с названием темы оформления.

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

Примечание : часто пользователи удаляют стандартные темы оформления, а зря. Они являются эталонными, и если вы не правили код этих тем, тогда стоит активировать одну из них после восстановления сайта.

Загрузить стандартные темы оформления можно здесь:

  • TwentyTen
  • TwentyEleven
  • TwentyTwelve

1.2. PhpMyAdmin

Если вы удалили стандартную тему оформления или отредактировали её, и она не работает, то можно скачать её заново. Ссылки для загрузки тем выше.


Выбираем Базу Данных вашего сайта:

Переходим во вкладку SQL :

И копируем туда следующий код:

UPDATE wp_options SET option_value = "twentytwelve" WHERE option_name = "template"; UPDATE wp_options SET option_value = "twentytwelve" WHERE option_name = "stylesheet"; UPDATE wp_options SET option_value = "twentytwelve" WHERE option_name = "current_theme";

Для смены темы оформления таким способом нужно правильно указать её название. Советую использовать стандартные темы оформления в данном случае, ссылки на которые мы приводили выше.

После этого содержимое вашего сайта снова отобразится.

2. Плагины

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

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

В этом случае способ отключения плагина схожий с методом отключения темы оформления посредством FTP.

Для того, чтобы отключить плагин :

  1. Зайдите на FTP вашего сайта.
  2. Зайдите в папку с установленным плагином, по умолчанию это /wp-content/plugins/
  3. Переименуйте, удалите или отредактируйте плагин. Если вы не удалили, а переименовали плагин, то при переходе в "Консоль управления → Плагины " WordPress автоматически его деактивирует.

3. Файл.htaccess

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

Обычно файл .htaccess находиться в корневой папке вашего сайта (в которую вы попадаете сразу после подключения к FTP).

Так как название этого файла начинается с точки - по умолчанию он считается скрытым и не отображается FTP-клиентом.

В FTP-клиенте FileZilla следует перейти в меню "Сервер " и поставить флажок на "Принудительно отображать скрытые файлы ", а затем обновить список файлов или подключиться заново к FTP, чтобы увидеть файл.

Теперь данный файл стал доступен, и вы можете открыть его в любом текстовом редакторе, например в блокноте, но для удобства работы советую использовать Notepad++ .

Когда вы откроете файл, вы увидите текст, который по сути является правилами и указаниями для работы веб сервера. Вы можете просмотреть внесенные вами изменения и устранить ошибки, либо данный файл можно просто удалить, а в последствии сгенерировать новый средствами WordPress. Для этого нужно перейти в панель администратора сайта, Параметры → Постоянные ссылки , выбрать нужный вариант и нажать "Сохранить ".

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

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

Что за ошибка http error 500

Полный текст ошибки 500 на английском «internal server error» с приписками «occurred», «nginx», «database problem try later». Это переводится как «внутренняя ошибка сервера». В русскоговорящем сегменте обычно пишется просто «ошибка сервера». Раз уж у обычных пользователей дома нет никаких серверов, решение этой проблемы обычно зависит от владельца сайта . Но не всегда неисправность возникает по вине вебмастера, иногда такое сообщение возникает по вине пользователя, рассмотрим несколько способов решения этой задачи.

Корни неисправности идут со стороны сайта, поэтому рекомендаций для обычного пользователя немного. Тем не менее, есть несколько способов:

  1. Перезагрузить страницу . Владельцы сайта, естественно, заметят проблему и сделают всё, чтобы её решить как можно скорее. Поэтому после неудачной попытки попробуйте снова через пару минут, возможно, к тому времени всё уже будет хорошо.
  2. Просканировать компьютер на наличие вирусов . Вредоносные программы могут действовать по-разному. Невозможно предсказать, насколько они изворотливые и хитроумные. Поэтому не стоит исключать возможность заражения ПК где-то на просторах сети.
  3. Сменить настройки доступа к Интернету. Заходим в «Панель управления» и находим Центр управления сетями и общим доступом. Кликаем правой кнопкой на своем подключении и выбираем Свойства. Остается найти пункт – протокол интернета версии 4 и изменить его настройки.

Исправляем на стороне сервера

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

Меняем тему WordPress

Владельцы сайтов на базе WordPress наверняка слышали об этой ошибке. И в этом случае сложно определить точную причину. Часто код ошибки 500 может возникнуть из-за некорректно установленной темы. Для того, чтобы исправить эту причину, установите одну из стандартных тем и перезапустите сайт. Если не помогло, удалите «wp-admin» и «wp-includes» и замените их резервными копиями.

Деактивируем плагины

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

Изменяем конфигурацию.htaccess

Авторизуемся в корневом каталоге WordPress и находим файл.htaccess. Переименовываем его в.htaccess.bak. Затем обновляем окно и смотрим, сработало ли это. Если да, заходим в раздел «Параметры », затем – «Постоянные ссылки» и «Сохранить изменения».

Меняем права доступа

Проблема может крыться в значении прав доступа 777, которые позволяют любому пользователю вносить изменения. Это негативно отразится на вашем ресурсе. Но на некоторых хостингах такой ошибки может и не быть. Доступ к корневому каталогу ресурса должен быть только у вас.

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

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

Для того, чтобы избежать слишком большой нагрузки на сервер хостинг порой накладывает ограничение на потребление памяти. Чаще всего это случается так: мы ставим плагин, который слишком «тяжёлый» для нашего ресурса. В итоге он не может прогрузиться до конца и возникает подобное сообщение — internal server error database problems try later. Для исправления ситуации либо уменьшите объем потребляемой памяти, либо обратитесь в техническую поддержку вашего хостинга.

Исправляем скрипты CGI

Есть некоторые правила оформления и размещения этих скриптов:

  • Загружать их нужно через FTP .
  • Ограничьте доступ к CGI и папкам с ними, чтобы записывать их могли только вы.
  • Из-за работы скрипта могут быть неправильно сформированы НТТР-заголовки ответа. Для решения этой причины нужно открыть логи ошибок и проверить их.

Исправляем ошибку при входе в админку Joomla

Проблемы с сервером могут случиться не только с Вордпресс но и с Joomla. С Джумлой стоит, наоборот, изменить права доступа на 777.

Оптимизируем скрипты

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

Изменение версии PHP

Ошибка internal server error nginx может произойти также при переходе на новую версию PHP. И решение простое – нужно всего лишь восстановить прежнюю . Изменение происходит индивидуально, в зависимости от хостинг-панели. Но обычно нужно пройти по пути «Дополнительно» — «Смена версии PHP ».

Включаем отображение ошибок

Следует включить отображение ошибок, для того, чтобы видеть, какая именно часть кода вызывает проблему. И это очень удобно – не нужно наугад искать причину. Делаем мы это в том же разделе, где и смена версии PHP. Просто нужно в пункте «Отображать ошибки » кликнуть на «Включена».

Используем отладку на WordPress

У Вордпресс есть своя собственная система отладки , позволяющая вычислить причину проблем. Для того, чтобы её включить, нужно внести изменения в wp-config.php. В файловом менеджере появится debug.log. В нём и будут записаны все проблемы, которые вам нужно решить.

Чтобы это сделать, открываем сам файл и ищем строку:

Define(‘WP_DEBUG’, false);

Для включения изменяем false на true. Чтобы включить запись протоколирования в файл необходимо добавить еще одну строку. В итоге должно получиться:

Define("WP_DEBUG", true); define("WP_DEBUG_LOG", true);

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

Define("WP_DEBUG_DISPLAY", true);

Восстанавливаем резервную копию сайта

Если вообще ничего не помогает, для восстановления работы сайта, можно использовать бэкап. Разумеется, у каждого владельца интернет-ресурса он должен быть. Есть огромное количество плагинов, которые позволяют это сделать. Например, All-in-One WP Migration.

Переустановка WordPress

Это самый кардинальный путь решения проблемы. Для этого мы распаковываем новую версию Вордпресс на компьютере и удаляем оттуда wp-config-sample.php и wp-content. Переносим все корневые файлы на хостинг через FTP. Сохраняем сайт и обновляем его в браузере.

При плохой системной конфигурации,работа сервера может пойти наперекосяк,и тогда 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.