Меню

Файл php ошибка 500

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

Где и когда можно встретить ошибку 500

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

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

Отображаться ошибка может по-разному. Вот пример:

Ошибка 500

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

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

Комьюнити теперь в Телеграм

Подпишитесь и будьте в курсе последних IT-новостей

Подписаться

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

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

Основной причиной ошибки 500 может быть:

  1. Неверный синтаксис файла .htaccesshtaccess – это файл, в котором можно задавать настройки для работы с веб-сервером Apache и вносить изменения в работу сайта (управлять различными перенаправлениями, правами доступа к файлам, опциями PHP, задавать собственные страницы ошибок и т.д.). 
    Узнать больше о файле .htaccess можно в статье «Создание и настройка .htaccess».
  2. Ошибки в скриптах сайта, то есть сценариях, созданных для автоматического выполнения задач или для расширения функционала сайта.
  3. Нехватка оперативной памяти при выполнении скрипта.
  4. Ошибки в коде CMS, системы управления содержимым сайта. В 80% случаев виноваты конфликтующие плагины. 

Год хостинга в подарок при заказе лицензии 1С-Битрикс

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

Заказать

Как получить больше данных о причине ошибки 

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

Отображение ошибки бывает разным. Ее внешний облик зависит от того, чем она вызвана.

Самые частые причины ошибки 500 можно распознать по тексту ошибки или внешнему виду страницы. 

  1. Сообщение Internal Server Error говорит о том, что есть проблемы с файлом .htaccess (например, виновата некорректная настройка файла). Убедиться, что .htaccess является корнем проблемы, поможет следующий прием: переименуйте файл .htaccess, добавив единицу в конце названия. Это можно сделать с помощью FTP-клиента (например, FileZilla) или файлового менеджера на вашем хостинге (в Timeweb такой есть, с ним довольно удобно работать). После изменения проверьте доступность сайта. Если ошибка больше не наблюдается, вы нашли причину.
  2. Сообщение HTTP ERROR 500 или пустая страница говорит о проблемах со скриптами сайта. В случае с пустой страницей стоит учесть, что отсутствие содержимого сайта не всегда указывает на внутреннюю ошибку сервера 500.

Давайте узнаем, что скрывается за пустой страницей, обратившись к инструментам разработчика. Эта браузерная панель позволяет получить информацию об ошибках и другие данные (время загрузки страницы, html-элементы и т.д.). 

Как открыть панель разработчика

  • Нажмите клавишу F12 (способ актуален для большинства браузеров на Windows). Используйте сочетание клавиш Cmd+Opt+J, если используете Google Chrome на macOS. Или примените комбинацию Cmd+Opt+C в случае Safari на macOS (но перед этим включите «Меню разработки» в разделе «Настройки» -> «Продвинутые»). Открыть инструменты разработчика также можно, если кликнуть правой кнопкой мыши в любом месте веб-страницы и выбрать «Просмотреть код» в контекстном меню. 
  • Откройте вкладку «Сеть» (или «Network») и взгляните на число в поле «Статус». Код ответа об ошибке 500 — это соответствующая цифра.

Причины ошибки 500Более детальную диагностику можно провести с помощью логов.

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

Как вы видите, данных в логи записывается немало, поэтому они разделены по типам. За сведениями о нашей ошибке можно обратиться к логам ошибок (error_log). Обычно такие логи предоставляет служба поддержки хостинга, на котором размещен сайт. В Timeweb вы можете включить ведение логов и заказать необходимые данные в панели управления. Разобраться в полученных логах поможет статья «Чтение логов».

Как устранить ошибку

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

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

У этого файла довольно строгий синтаксис, поэтому неверно написанные директивы (команды) могут привести к ошибке. Попробуйте поочередно удалить команды, добавленные последними, и проверьте работу сайта. 
Также найти проблемную директиву можно с помощью логов ошибок (через те же инструменты разработчика в браузере). На ошибку в директиве обычно указывает фраза «Invalid command». Информацию о верном написании директивы или способе исправления ошибок в .htaccess вы можете найти в интернете. Не нужно искать, почему сервер выдает ошибку 500, просто введите в строку поиска название нужной команды или текст ошибки из логов.

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

Скрипт не запускается

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

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

Если в логах вы видите ошибку «Allowed memory size», для устранения ошибки 500 стоит оптимизировать работу скрипта. Вы можете воспользоваться специальными расширениями для анализа производительности скрипта или обратиться за помощью к специалисту, который поработает над его оптимизацией.

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

Ошибки в CMS

Если код CMS содержит неверный синтаксис, это может вывести сайт из строя. В таком случае логи сообщат вам об ошибке 500 текстом «PHP Parse error: syntax error, unexpected». Так происходит, когда некорректно работает плагин (или тема, используемая в CMS, но реже) либо есть ошибки в коде. Ошибка может быть допущена случайно, произойти при обновлении плагина или версии CMS.

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

Ошибка 500 из-за плагинов ВордпрессТакже в большинстве случаев подобные проблемы помогает решить поддержка CMS.

Информацию о других распространенных ошибках вы можете найти в статье «6 наиболее часто возникающих ошибок HTTP и способы их устранения».

Удачи! 

В php.ini включил display_errors и display_startup_errors, не помогло.

задан 8 июн 2012 в 8:31

ikirab1's user avatar

4

пробовали в начале скрипта прописать

<?php
ini_set('display_errors', 1);
error_reporting(E_ALL);
?>

ответ дан 25 июн 2015 в 3:32

des1roer's user avatar

des1roerdes1roer

2,6245 золотых знаков28 серебряных знаков66 бронзовых знаков

Отчего возникает ошибка 500 (Internal Server Error)?

Наиболее частой причиной ошибки 500 (Internal Server Error, внутренняя ошибка сервера) является неверный синтаксис файла .htaccess или наличие в нем неподдерживаемых директив. Чаще всего достаточно закомментировать директиву Options (для этого нужно поставить в начале строки решетку — #), и проблема исчезнет.

Ошибка 500 также может возникать вследствие неправильного обращения с CGI-скриптами:

CGI-скрипты должны иметь окончания строк в формате UNIX (n), а не в формате Windows (rn). Для этого их надо загружать на сервер по FTP в режиме ASCII.

CGI-скрипты и папки, в которых они находятся, должны быть доступны для записи только владельцу, то есть иметь права 0755 (drwxr-xr-x).

В результате работы CGI-скрипта сформированны неправильные HTTP-заголовки ответа. В этом случае для решения проблемы полезно обратиться к error_log (его можно найти в контрольной панели в разделе « Статистика / Лог-файлы / Лог ошибок»).

ответ дан 8 июн 2012 в 11:38

Eugene 1's user avatar

Eugene 1Eugene 1

2921 серебряный знак4 бронзовых знака

1

А что говорит error.log веб сервера. Один из вариантов, скрипт не выполняется из-за не правильно выставленных прав доступа.

ответ дан 8 июн 2012 в 11:35

gurzufnet's user avatar

gurzufnetgurzufnet

1,1346 серебряных знаков7 бронзовых знаков

1

This article describes ways to minimize the occurrence of «500 Internal Server Error» messages.

Table of Contents

  • Problem
  • Resolution
    • Set correct permissions
    • Check .htaccess directives

Problem

Visitors to your web site receive “500 Internal Server Error” messages when they access a page that uses PHP.

Resolution

Almost all of our servers run PHP as a CGI binary. One of the side effects of running PHP as a CGI binary is that internal server errors can occur if the permissions on files and directories are set incorrectly. Internal server errors can also occur if there are certain PHP directives defined in an .htaccess file.

If your web site is experiencing internal server errors, the first thing you should do is check the server logs. The server logs provide valuable information about which files are causing the errors, and potential causes. If you have a shared hosting account, you can view your web site’s error logs in cPanel. If you have a VPS or dedicated server, you can view your web site’s log files directly at the following paths:

  • /usr/local/apache/logs/error_log
  • /usr/local/apache/logs/suphp_log
Set correct permissions

If permission settings are causing internal server errors, you may see entries in the server logs similar to any of the following lines:

SoftException in Application.cpp:357: UID of script "/home/username/public_html/.htaccess" is smaller than min_uid

SoftException in Application.cpp:146: Mismatch between target UID (511) and UID (510) of file "/home/username/public_html/index.php"

SoftException in Application.cpp:256: File "/home/username/public_html/index.php" is writeable by others

These errors are all caused by permission issues. The first two lines indicate that the file’s owner or group is set incorrectly. For example, if the owner of a PHP file is the nobody or root account instead of your user account, visitors receive an internal server error when they try to view the page. If you have a shared hosting account, our Guru Crew can change the owners and groups for your files. If you need further assistance, please open a support ticket with our Guru Crew on the Customer Portal at https://my.a2hosting.com.

The third line indicates that file permissions for the index.php file are too permissive. For example, if your web site has a directory or file whose permissions are set to 777 (full permissions), anyone can read, write, or execute it. Additionally, visitors receive an internal server error when they try to view the page. To resolve this problem, change the permissions to 755 for directories and 644 for files. For example, to set the correct permissions for all directories and files in the public_html directory, type the following commands:

cd public_html
find . -type d -exec chmod 755 {} ;
find . -type f -exec chmod 644 {} ;

Do not change permissions on the public_html directory itself! Doing so may make your web site inaccessible.

Check .htaccess directives

Servers that run PHP as a CGI binary cannot use the php_flag or php_value directives in an .htaccess file. If directives in an .htaccess file are causing internal server errors, you will see entries in the server logs similar to the following line:

/home/username/public_html/.htaccess: Invalid command 'php_flag', perhaps misspelled or defined by a module not included in the server configuration

To resolve this problem, you must place any PHP directives into a custom php.ini file on your account, and remove or comment out any PHP directives in the .htaccess file. For information about how to set up a custom php.ini file, please see this article.

В некоторых случаях, при попытке перейти на нужный интернет-ресурс, браузер выдает системное сообщение (статус) с кодом «500», о котором свидетельствует надпись «500 Internal Server Error» («500 внутренняя ошибка сервера»).

ошибка 500

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

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

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

  • Неверные права на объекты файловой системы
  • Ошибочный код или неподдерживаемые директивы файла .htaccess
  • Долгое выполнение скриптов
  • Ошибка в коде CGI-скрипта
  • Превышение лимита памяти
  • Некорректная работа CMS

Как диагностировать ошибку 500

Для диагностики внутренней ошибки сервера с кодом 500 необходимо проверить содержимое файла «error.log», находящийся в корне сайта или в каком-либо другом месте, которое зависит от настроек сервера.

Способ доступа к файлу зависит от того, находится ли сайт на веб-хостинге или размещён на выделенном/физическом сервере.

Ошибка 500

  1. На веб-хостинге можно найти «error.log» в панели управления веб-хостингом. Например, в ISPmanager файл с ошибками расположен в разделе «WWW» → «Журнал».
  2. На VPS файл «error.log» можно посмотреть через консоль, либо предварительно скачать его на локальный компьютер при помощи клиента FileZilla.

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

Права доступа к директориям и файлам

Отсутствие необходимых прав доступа к объектам файловой системы (директориям и файлам) довольно часто приводит к ошибке со статусом «500». При переносе сайта на другой хостинг или изменении его структуры (добавлении новых элементов) пользователь забывает изменить права доступа.

Решение № 1 — изменение прав

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

Алгоритм изменения атрибута файла (папки)

  1. Выполнить вход в корневую директорию сервера, введя параметры аутентификации — IP-адрес сервера, логин пользователя, пароль, а также порт (если необходимо).
  2. Нажать на кнопку «Быстрое соединение». Слева отобразится список объектов файловой системы локального компьютера, а справа — файлы и директории сервера.
    подключение к VDS
  3. Следующий шаг, о котором часто забывают при загрузке сайта на хостинг, — активация пункта меню для отображения скрытых файлов («Сервер → Принудительно отображать скрытые файлы»).
    настройка скрытых файлов
  4. Загрузить необходимые файлы и папки на сервер посредством перетаскивания или используя контекстное меню «Загрузить на сервер».
    загрузка на сервер
  5. После загрузки перейти на правую панель, выделить интересующие объекты и через контекстное меню исправить соответствующие права доступа.
    установка прав

Рекомендуемые числовые значения для файлов — «644» и директорий — «755». Необходимо пересматривать и изменять права отдельно для каждого объекта файловой системы. Этот подход позволит избежать ошибок.

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

Решение № 2 — перезагрузка сервера

При размещении ресурса на базе физического или виртуального выделенного сервера (VPS) может иногда возникать ошибка 500. Если страница временно недоступна и браузер выдает ошибку с кодом «500», а изменения прав доступа были испробованы, то нужно просто перезагрузить сервер.

Некорректный .htaccess

Для файла .htaccess существует определенный синтаксис, который нельзя нарушать. Если в нем неверно указаны директивы, то при обращении к сайту будет возникать ошибка «500». Кроме того, не все директивы поддерживаются на хостинге.

Решение № 1 — исправление кода

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

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

Методика выявления неверного кода

  1. Закомментировать все строки при помощи символа решетки «#».
    Методика выявления неверного кода
  2. Убрать «#» с первой строки.
    Методика выявления неверного кода
  3. Сохранить изменения и загрузить нужные файлы на сервер через перетаскивание или с помощью функции «Загрузить на сервер» в контекстном меню. Процедура аналогична тому, как это делается в описанном выше случае с изменением атрибута файла.
  4. Проверить web-приложение (сайт).
  5. При отсутствии сообщения с кодом «500» нужно выполнить пункт «2» для других строк.
  6. Если возникла ошибка, то требуется проверить правильность написания директивы и ее поддержку хостингом.

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

Решение № 2 — замена символов

Замена символов — распространенная ошибка при написании директив самостоятельно или копировании частей .htaccess c недостоверных источников. В коде директив присутствуют русские символы, которые очень сложно отличить от английских. Процедуру следует делать в специальных редакторах или через сервис антиплагиата «text.ru». Последний позволяет выявлять символы замены в массиве текста.

Алгоритм нахождения

  1. Запустить сервис проверки уникальности текста «text.ru».
  2. Скачать .htaccess на локальный компьютер.
  3. Сделать его копию и отредактировать ее, оставив только английские символы.
    Алгоритм нахождения неверных символов
  4. Скопировать содержимое файла и вставить в поле для текста.
  5. Нажать на кнопку «Проверить уникальность» и дождаться результатов проверки.
    Алгоритм нахождения неверных символов
  6. Исправить символ в исходнике.
  7. Сохранить файл и закачать его на сервер.
  8. Выполнить переход на сайт.

Долгое выполнение скриптов

В настройках PHP выставляется ограничение времени, которое дается скрипту на его выполнение. Многие об этом забывают, выставляя только параметр в файле «php.ini», находящийся в папке web-сервера Apache.

Решение № 1 — оптимизация PHP-скрипта

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

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

Решение № 2 — увеличение времени обработки

Клиенту, пользующемуся услугой VPS, следует увеличить время ожидания сервера. Для этого нужно в «php.ini» найти параметр «set_time_limit» и установить его значение как «0», т. е. set_time_limit = 0.

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

Ошибка в коде CGI-скрипта

Скрипт CGI-типа используется для создания интерактивных страниц, контент которых зависит от действий пользователя. Довольно часто при неверной работе со скриптами этого типа на сайте возникает внутренняя ошибка сервера с кодом «500».

Решение № 1 — проверка формата окончания строк

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

  • Если сервер работает под управлением Unix-систем, то окончание каждой строки должно соответствовать символу «n».
  • При использовании Windows-платформы — «rn».

Решение № 2 — установка прав доступа

Одной из причин неправильной работы CGI-скриптов является некорректное разрешение прав доступа. Для директории, в которой хранятся CGI-файлы, должны стоять права с числовым значением «755».

Решение № 3 — неверные HTTP-заголовки

В некоторых случаях ошибка возникает из-за некорректных HTTP-заголовков. Для ее диагностики следует проверить файл «error.log».

Превышение лимита выделенной памяти

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

Решение № 1 — проверка PHP-скриптов

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

Затем требуется проверить описание функций (структуру и код) и включить опцию показа ошибок в «php.ini».

Опции для тестирования

  • error_reporting = E_ALL
  • display_errors = On
  • display_startup_errors = On

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

Если проблем в файле нет, а сообщение об ошибке «500» выводится на экране, необходимо перейти ко второму способу решения проблемы.

Решение № 2 — изменение настроек

Настройка лимита памяти выставляется в файле конфигурации «php.ini». За этот параметр отвечает опция «memory_limit».

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

Решение № 3 — связаться с технической поддержкой

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

Некорректная работа CMS

Причиной появления ошибки «500» могут стать неверные настройки CMS. Наиболее часто используются WordPress и Joomla. Следовательно, на их примере и нужно разобрать причины возникновения проблемы, а также решения по ее устранению.

Ошибка «500» в WordPress

При работе сайта на движке WordPress методика диагностики появления ошибки с кодом «500» немного отличается от остальных CMS. Проблема может быть связана с .htaccess, установленной темой, плагином или ядром WordPress.

Решение № 1 — файл .htaccess

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

Выполнение диагностики
  1. Скопировать .htaccess на диск, а затем удалить его на сервере.
  2. Обновить страницу.
  3. Если сайт заработал, то нужно искать причину в файле.
  4. Если при обновлении страницы ошибка не исчезнет, то рекомендуется изменить атрибуты файла .htaccess. Для этого нужно запретить запись в файл, задав в правах доступа числовое значение «644».

Последний пункт влияет на активацию плагинов. Его рекомендуется рассматривать как временную меру.

Решение № 2 — смена текущей темы

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

Решение № 3 — перебор плагинов

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

Порядок деактивации плагина

Порядок деактивации плагина
  1. Выбрать плагин (стрелка № 1).
  2. В выпадающем списке указать опцию «Деактивировать» (стрелка № 2).
  3. Нажать на кнопку «Применить» (стрелка № 3).
  4. Обновить веб-страницу.
  5. Перебор плагинов продолжать до возобновления работы интернет-ресурса.

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

Решение № 4 — модификация конфигурационного файла

Устранить проблему внутренней ошибки сервера поможет увеличение объема памяти.

Алгоритм модификации
  1. В корневой директории хостинга необходимо найти файл «wp.config.php».
  2. Открыть его в редакторе.
  3. Перейти в конец файла.
  4. Добавить код «define(‘WP_MEMORY_LIMIT’, ’64M’)».
  5. Сохранить и перезагрузить страницу.

Решение № 5 — обновление CMS

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

Ошибка «500» в CMS Joomla

Ошибка с кодом «500» иногда возникает при попытке зайти в административную панель CMS Joomla. При этом сайт и все его функции работают корректно.

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

Решение № 1 — установка прав на «logs»

Чтобы устранить проблему, нужно установить права доступа на папки «logs» и «tmp», которые должны соответствовать числовому значению «777».

Решение № 2 — корректность путей к директориям «logs» и «tmp»

Пути к директориям хранятся в файле «configuration.php». Необходимо проверить их правильность, указав при необходимости полные пути.

Решение № 3 — проверка .htaccess

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

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

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

  • Ошибка 500 Internal Server Error — диагностика
  • Ошибка 500 Internal Server Error — устранение на популярных платформах
  • Ошибка 500 Internal Server Error — устранение на стороне серверных скриптов
  • Попросите помощи у системного администратора
  • Ошибку 500 Internal Server Error довольно легко устранить

Важно помнить, что эта ошибка происходит на стороне сервера. Это значит, что HTML-код, выполняемый на стороне клиента, а также JavaScript или любые другие запущенные в браузере объекты, не могут быть причиной, по которой возникает ошибка 500 Internal Server Error. Само название (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 может стать разработка и тестирование собственных скриптов.

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

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

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

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

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

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

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

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

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

Код ошибки 5хх говорит о том, что браузер отправил запрос корректно, но сервер не смог его обработать. Что значит ошибка 500? Это проблема сервера, причину которой он не может распознать.

Сообщение об ошибке сопровождается описанием. Самые популярные варианты:

  • Внутренняя ошибка сервера 500,
  • Ошибка 500 Internal Server Error,
  • Временная ошибка (500),
  • Внутренняя ошибка сервера,
  • 500 ошибка сервера,
  • Внутренняя ошибка HTTP 500,
  • Произошла непредвиденная ошибка,
  • Ошибка 500,
  • HTTP status 500 internal server error (перевод ― HTTP статус 500 внутренняя ошибка сервера).

Дизайн и описание ошибки 500 может быть любым, так как каждый владелец сайта может создать свою версию страницы. Например, так выглядит страница с ошибкой на REG.RU:

Как ошибка 500 влияет на SEO-продвижение

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

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

Проверить, осталась ли страница на прежних позициях, можно с помощью Google Search Console. Если робот исключил страницу из поисковой выдачи, её можно добавить снова.

Код ошибки 500: причины

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

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

Решить проблему с сервером можно только на стороне владельца веб-ресурса. Однако пользователь тоже может выполнить несколько действий, чтобы продолжить работу на сайте.

Что делать, если вы пользователь

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

Перезагрузите страницу

Удаленный сервер возвращает ошибку не только из-за серьёзных проблем на сервере. Иногда 500 ошибка сервера может быть вызвана небольшими перегрузками сайта.

Чтобы устранить ошибку, перезагрузите страницу с помощью сочетания клавиш:

  • на ПК — F5,
  • на ноутбуке — Fn + F5,
  • на устройствах от Apple — Cmd + R.

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

Очистите кэш и cookies браузера

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

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

Что делать, если вы владелец сайта

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

Ниже рассмотрим самые популярные причины и способы решения.

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

Неверные правила в файле .htaccess — частая причина возникновения ошибки. Чтобы это проверить, найдите .htaccess в файлах сайта и переименуйте его (например, в test). Так директивы, прописанные в файле, не повлияют на работу сервера. Если сайт заработал, переименуйте файл обратно в .htaccess и найдите ошибку в директивах. Если вы самостоятельно вносили изменения в .htaccess, закомментируйте новые строки и проверьте доступность сайта.Также может помочь замена текущего файла .htaccess на стандартный в зависимости от CMS.

Найти директиву с ошибкой можно с помощью онлайн-тестировщика. Введите содержимое .htaccess и ссылку на сайт, начиная с https://. Затем нажмите Test:


Произошла непредвиденная ошибка

На экране появится отчёт. Если в .htaccess есть ошибки, они будут выделены красным цветом:


500 ошибка nginx

Активирована устаревшая версия PHP

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

Установлены некорректные права на файлы и каталоги сайта

В большинстве случаев корректными правами для каталогов являются «755», для файлов — «644». Проверьте, правильно ли они установлены, и при необходимости измените права на файлы и папки.

Запущено максимальное количество процессов

На тарифах виртуального хостинга REG.RU установлены ограничения на количество одновременно запущенных процессов. Например, на тарифах линейки «Эконом» установлено ограничение в 18 одновременно запущенных процессов, на тарифах «+Мощность» ― 48 процессов. Если лимит превышен, новый процесс не запускается и возникает системная ошибка 500.

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

Чтобы проверить количество процессов, подключитесь по SSH. Выполните команду:

ps aux | grep [u]1234567 |wc -l

Вместо u1234567 укажите ваш логин хостинга: Как узнать логин хостинга.

Чтобы посмотреть, какие процессы запущены, введите команду:

Вместо u1234567 укажите логин услуги хостинга.

Командная строка отобразит запущенные процессы:


Код ошибки 500

Где:

  • u1234567 — логин услуги хостинга,
  • 40522 — PID процесса,
  • S — приоритет процесса,
  • /usr/libexec/sftp-server — название процесса.

Процесс можно завершить командой kill, например:

Вместо 40522 укажите PID процесса.

Чтобы решить проблему, вы также можете:

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

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

Скрипты работают слишком медленно

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

У пользователей VPS есть возможность увеличить максимальное использование оперативной памяти на процесс, но лучше делать скрипты меньшего размера.

Ошибка 500 на сайте, созданном на WordPress

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

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


Как отключить плагин в WordPress

  1. 1.

  2. 2.

    Перейдите во вкладку «Плагины» ― «Установленные».

  3. 3.

    Нажмите Деактивировать у плагина, который, как вам кажется, повлиял на работу сайта:

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

Содержание

500 Internal Server Error — это любая внутренняя ошибка сервера, которая не описана другими ошибками этого же класса.

При появлении сообщения о ошибке — необходимо перейти по FTP в каталог 0:/domains/SITE.NAME/logs/ и открыть файл error.log. В конце файла будет указана строка поясняющая причины приведшие к ошибке.

Рассмотрим причины, которые могут привести к ошибке 500:


Неверный синтаксис файла .htaccess

Наиболее частой причиной ошибки 500 (Internal Server Error, внутренняя ошибка сервера) является неверный синтаксис файла .htaccess или наличие в нем неподдерживаемых директив.

Вы можете открыть файл .htaccess текстовым редактором и найти строки, в начале которых используются указанные конструкции. Найденные строки можно удалить или добавить в начале строки символ — #1). Файл .htaccess может находиться в корневом каталоге вашего сайта — на том же уровне, что и файлы index.php или index.html или robots.txt.

Неправильное обращение с CGI-скриптами

Ошибка 500 также может возникать вследствие неправильного обращения с CGI-скриптами:

CGI-скрипты должны иметь окончания строк в формате UNIX (n), а не в формате Windows (rn). Для этого их надо загружать на сервер по FTP в режиме ASCII.

CGI-скрипты и папки, в которых они находятся, должны быть доступны для записи только владельцу, то есть иметь права 0755 (drwxr-xr-x).

В результате работы CGI-скрипта сформированы неправильные HTTP-заголовки ответа. В этом случае для решения проблемы полезно обратиться к error.log (его можно найти в каталоге 0:/domains/site.ru/logs/).

Медленная работа скрипта

Медленная работа скрипта. Например, есть ограничения от веб-сервера: если скрипт не активен в течение 60 секунд или зависает, то он завершается под видом ошибки 500.

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

Обычно достаточно поменять тарифный план на тариф с большим объемом PHP памяти.

Неверные права на папки или файлы

Убедитесь, что Вы нигде не выставили права /chmod 777 — ни на файлы, ни на папки.

В целях безопасности на наших серверах нельзя использовать данные права. Выставьте для папок 755, для файлов 644. Уверяем Вас, скрипты будут работать прекрасно с указанными правами, даже если в требованиях к скрипту есть установка прав 777.

Несовместимость версий PHP

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

Используйте актуальные версии CMS и плагинов, ознакомьтесь с их спецификациями.

Для изменения версии PHP воспользуйтесь следующей инструкцией.

Несовместимость расширений PHP

В php.ini включены не совместимые друг с другом расширения php. Например, одновременное включение eaccelerator и APC, либо eaccelerator и XCache почти наверняка будет приводить к ошибке Segmentation Fault и, как следствие, к ошибке 500 Internal Server Error на сайте.

Перенос строки не совместим с unix-форматом

Если Вы редактировали какие либо файлы сайта в ОС Windows, то при сохранении в файл могли добавиться не совместимые с unix-форматом символы переноса строки.

Для корректной работы необходимо использовать совместимые с unix-форматом переносы строк. Например, в Notepad++ этот параметр можно настроить в меню «Правка» → «Формат конца строк» → «Преобразовать в UNIX-формат».

Установка плагина, шаблона или других дополнений

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

Обычно это делается через панель администратора или по FTP соединению.


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

В данной статье мы рассмотрим наиболее вероятные причины возникновения ошибки 500 “Internal Server Error”.
Причины указаны в порядке вероятности возникновения.

  1. Использование в файлах .htaccess недопустимых на нашем хостинге конструкций, например Options
    -MultiViews
    или php_value и php_flag. Вы можете открыть файл .htaccess текстовым редактором и
    найти строки, в начале которых используются указанные конструкции. Найденные строки можно удалить
    или добавить # в начале. Файл .htaccess может находиться в корневом каталоге вашего сайта — на
    том же уровне, что и файлы index.php или index.html или robots.txt.

  2. Скрипт пытается получить больше памяти, чем ограничено параметром memory_limit. Обычно
    достаточно увеличить этот параметр в панели
    управления. Увеличивать стоит постепенно, с шагом в
    16 — 32 Мб, пока ошибка не пропадет. Новые настройки PHP вступают в силу в течение 3-5 минут.

  3. В панели управления или в php.ini включены не совместимые друг с другом расширения php.
    Например, одновременное включение eaccelerator и APC, либо eaccelerator и XCache почти наверняка
    будет приводить к ошибке Segmentation Fault и, как следствие, к ошибке Internal Server Error на
    сайте.

  4. Если вы редактировали какие либо файлы сайта в ОС Windows, то при сохранении в файл могли
    добавиться не совместимые с unix-форматом символы переноса строки. Для корректной работы необходимо
    использовать совместимые с unix-форматом переносы строк. Например, в
    Notepad++ этот параметр можно настроить в меню “Правка” -> “Формат
    конца строк” -> “Преобразовать в UNIX-формат”.

  5. Слишком долгая работа скрипта (может быть связано, например, с выгрузкой товаров на сайте, либо
    другими долгими запросами). Если веб-сервер не получает никакого ответа от скрипта в течение 120
    секунд, скрипт считается зависшим и его работа принудительно завершается с выдачей ошибки 500.
    Изменить это ограничение в индивидуальном порядке на виртуальном хостинге нельзя. В качестве решения
    вы можете запускать выполнение скрипта, разбив данные на части, либо через
    cron либо напрямую через
    ssh-соединение.

  6. Скрипт возвращает HTTP-заголовки, которые веб-сервер не может распознать и не понимает как интерпретировать.

Включение лога ошибок apache

Однозначно определить источник ошибки поможет включение лога ошибок. Для этого потребуется зайти в
панель управления https://panel.netangels.ru/virtualhosts/ , слева от названия сайта кликнуть на
иконку с тремя горизонтальными полосками и выбрать “Журнал ошибок”. Когда ошибки возникнут, то в
домашнем каталоге на сервере появится файл вида sitename.ru-error.log, где sitename.ru — имя сайта,
для которого вы включили лог ошибок.

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

Так же может быть полезно включить лог php ошибок поставив
галочку напротив пункта error.log и нажав кнопку сохранить. Лог ошибок будет сохранен в файле
log/php-errors.log.

500 Internal Server Error is one of the common PHP errors that can put a PHP developer in panic mode. This article provides information on the most common causes. Why it become common PHP errors ? because you will found this error in WordPress, Prestashop, Codeigniter, Java, ASP.NET or whatever.

500 Internal Server Error is not a client side problem. It’s up to the sysadmin of the Web server site to locate and analyse the logs which should give further information about the error. Based on Wikipedia, 500 Internal Server Error is A generic error message, given when an unexpected condition was encountered and no more specific message is suitable.

Here are several common ways that you might see the HTTP 500 error:

  • “500 Internal Server Error”
  • “HTTP 500 – Internal Server Error”
  • “Temporary Error (500)”
  • “Internal Server Error”
  • “HTTP 500 Internal Error”
  • “500 Error”
  • “HTTP Error 500”
  • “500. That’s an error”

HOW TO FIX THE 500 INTERNAL SERVER ERROR

CHECK YOUR SERVER ERROR LOGS

With any error message, particularly one as broad as the 500 Internal Server Error, you will first want to check any Apache and PHP error logs for your server. These logs can provide valuable context related to any code failures or other potential causes of a site failure.

ERROR WITH AN .HTACCESS FILE

If you are using a .htaccess on your site, it may be interfering with the web page you are trying to load into your browser. Please double check the .htaccess configuration. Any syntax errors will cause a 500 Internal Server Error message to be displayed instead of your website.

To confirm whether a misconfiguration .htaccess is the cause of the 500 Internal Server error, either remove or rename the .htaccess file temporarily and then try to reload the page.

If your PHP script makes external network connections, the connections may time out. If too many connections are attempted and time out, this will cause a “500 Internal Server Error.” To prevent these time outs and errors, you’ll want to make sure that PHP scripts be coded with some timeout rules. Typically, however, catching a timeout error when connecting to a database or externally to remote resources (example: RSS feeds) are difficult. They, in effect, freeze the script from continuing to run.

Removing any external connections can increase both the performance of your website and decrease the chances of you receiving a “500 Internal Server Error.”

SYNTAX OR CODING ERRORS IN YOUR CGI/PERL SCRIPT

If it is a web page ending in .cgi or .pl that is producing the error, check your script for errors.

CGI Script Guidelines

When editing your CGI script, use a plain text editor – a program that saves the file as a ‘text file’ type. DO NOT use Wordpad that comes with Microsoft Windows because it doesn’t save files in pure ASCII text format. Use Notepad instead to edit files.
Upload your CGI scripts in ASCII mode into the cgi-bin directory.
Set the file permissions on the CGI script file and directories to be chmod 755. If you use an FTP program to transfer files, right-click on the file and select change file attributes.
Double-check that the Perl modules you require for your script is supported.

Troubleshoot as a 504 Gateway Timeout error instead.

It’s not very common, but some servers produce a 500 Internal Server Error when in reality a more appropriate message based on the cause of the problem is 504 Gateway Timeout.

Delete your browser’s cookies

Some 500 Internal Server Error issues can be corrected by deleting the cookies associated with the site you’re getting the error on. After removing the cookie(s), restart the browser and try again.

How To Fix the 500 Internal Server Error PrestaShop

There are two ways to turn on Error Reporting in PrestaShop depending on what version you have.

For PrestaShop v1.4 through v1.5.2

  1. Open config/config.inc.php
  2. On or around line 29 you will find this line
    @ini_set('display_errors', 'off');
  3. Change that line to read
    @ini_set('display_errors', 'on');

For PrestaShop v1.5.3+

  1. Open config/defines.inc.php
  2. On or around line 28 you will find this line
    define('_PS_MODE_DEV_', false);
  3. Change that line to read
    define('_PS_MODE_DEV_', true);

Once you enable error reporting through your FTP or CPanel, you can navigate back to your PrestaShop’s front or back office and reproduce the error or issue you are having. For example, if you are not able to access your website because of the 500 error, you will need to turn on error reporting and refresh the page(s) that had the error. There will be additional information that you can use to investigate the problem.

How To Fix the 500 Internal Server Error WordPress

Checking for Corrupt .htaccess File

The first thing you should do when troubleshooting the internal server error in WordPress is check for the corrupted .htaccess file. You can do so by renaming your main .htaccess file to something like .htaccess_old. To rename the .htaccess file, you will need to login to your site using the FTP. Once you are in, the .htaccess file will be located in the same directory where you will see folders like wp-content, wp-admin, and wp-includes.

Once you have renamed the .htaccess file, try loading your site to see if this solved the problem. If it did, then give yourself a pat on the back because you fixed the internal server error. Before you move on with other things, make sure that you go to Settings » Permalinks and click the save button. This will generate a new .htaccess file for you with proper rewrite rules to ensure that your post pages do not return a 404.

If checking for the corrupt .htaccess file solution did not work for you, then you need to continue reading this article.

Increasing the PHP Memory Limit

Sometimes this error can happen if you are exhausting your PHP memory limit. Use our tutorial on how to increase PHP memory limit in WordPress to fix that.

If you are seeing the internal server error only when you try to login to your WordPress admin or uploading an image in your wp-admin, then you should increase the memory limit by following these steps:

  1. Create a blank text file called php.ini
  2. Paste this code in there: memory=64MB
  3. Save the file
  4. Upload it into your /wp-admin/ folder using FTP

Several users have said that doing the above fixed the admin side problem for them.

If increasing the memory limit fix the problem for you, then you have fixed the problem temporarily. The reason why we say this is because there has to be something that is exhausting your memory limit. This could be a poorly coded plugin or even a theme function. We strongly recommend that you ask your WordPress web hosting company to look into the server logs to help you find the exact diagnostics.

If increasing the PHP memory limit did not fix the issue for you, then you are in for some hard-core trouble shooting.

How To Fix the 500 Internal Server Error Codeigniter

Check your error logs, sometimes the problem is with file permission, so make sure your file permission is 0755.

Read also:

[SOLUTIONS] 502 Bad Gateway Error on Nginx

[SOLUTIONS] 504 Gateway Timeout Nginx

Sources:

500 Internal Server Error – pcsupport.about.com
WHY AM I GETTING A 500 INTERNAL SERVER ERROR MESSAGE? – mediatemple.net
The 500 Internal Server Error Explained Solved

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

А вот еще интересные материалы:

  • Яшка сломя голову остановился исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного где ошибка
  • Файл bcd код ошибки 0x0000098
  • Файл ntfs sys вызвал неожиданную ошибку