Невозможно сохранить файлы internal server error

Причины внутренней ошибки сервера «500» и способы её решения Сейчас читают: В некоторых случаях, при попытке перейти на нужный интернет-ресурс, браузер выдает системное сообщение (статус) с кодом «500», о котором свидетельствует надпись «500 Internal Server Error» («500 внутренняя ошибка сервера»). Код ошибки означает внутренние проблемы с сервером, которые необходимо диагностировать. Произошел сбой работы или […]

Содержание

  1. Причины внутренней ошибки сервера «500» и способы её решения
  2. Сейчас читают:
  3. Что способствует возникновению ошибки 500
  4. Как диагностировать ошибку 500
  5. Права доступа к директориям и файлам
  6. Решение № 1 — изменение прав
  7. Алгоритм изменения атрибута файла (папки)
  8. Решение № 2 — перезагрузка сервера
  9. Некорректный .htaccess
  10. Решение № 1 — исправление кода
  11. Методика выявления неверного кода
  12. Решение № 2 — замена символов
  13. Алгоритм нахождения
  14. Долгое выполнение скриптов
  15. Решение № 1 — оптимизация PHP-скрипта
  16. Решение № 2 — увеличение времени обработки
  17. Ошибка в коде CGI-скрипта
  18. Решение № 1 — проверка формата окончания строк
  19. Решение № 2 — установка прав доступа
  20. Решение № 3 — неверные HTTP-заголовки
  21. Превышение лимита выделенной памяти
  22. Решение № 1 — проверка PHP-скриптов
  23. Опции для тестирования
  24. Решение № 2 — изменение настроек
  25. Решение № 3 — связаться с технической поддержкой
  26. Некорректная работа CMS
  27. Ошибка «500» в WordPress
  28. Решение № 1 — файл .htaccess
  29. Решение № 2 — смена текущей темы
  30. Решение № 3 — перебор плагинов
  31. Решение № 4 — модификация конфигурационного файла
  32. Решение № 5 — обновление CMS
  33. Ошибка «500» в CMS Joomla
  34. Решение № 1 — установка прав на «logs»
  35. Решение № 2 — корректность путей к директориям «logs» и «tmp»
  36. Решение № 3 — проверка .htaccess

Причины внутренней ошибки сервера «500» и способы её решения

Сейчас читают:

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

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

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

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

Что способствует возникновению ошибки 500

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

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

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

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

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

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

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

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

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

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

  1. Выполнить вход в корневую директорию сервера, введя параметры аутентификации — IP-адрес сервера, логин пользователя, пароль, а также порт (если необходимо).
  2. Нажать на кнопку «Быстрое соединение». Слева отобразится список объектов файловой системы локального компьютера, а справа — файлы и директории сервера.
  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», сайт на хостинге по-прежнему не работает, необходимо обращаться к техподдержке хостинг-провайдера.

Надежный хостинг для сайта. 14 дней — бесплатно!

Источник

Разработчики и люди, профессионально работающие с веб-приложениями, боятся 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 легко исправляются. Проблема заключается в том, что без конкретной информации определение причины возникновения сбоя усложняется. Легче всего справиться с ошибкой, когда разработчик выяснит, что изменилось перед возникновением ошибки.

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

0 Пользователей и 1 Гость просматривают эту тему.

  • 11 Ответов
  • 1141 Просмотров

При сохранении материала или модуля пишет Internal Server Error.
В файле configuration.php public $log_path public $tmp_path прописаны правильно.
В Информация о системе (Права доступа на каталоги) все стоит Доступно.
Сайт сам работает нормально.
/logs/error.php пустой ошибок в нем нет.
в чем может быть проблема что еще может отдавать такую ошибку
вот htaccess

#Options +FollowSymLinks
#Options +SymLinksIfOwnerMatch

php_flag display_errors on

RewriteEngine On
RewriteCond %{QUERY_STRING} base64_encode[^(]*([^)]*) [OR]
RewriteCond %{QUERY_STRING} (<|%3C)([^s]*s)+cript.*(>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} GLOBALS(=|[|%[0-9A-Z]{0,2}) [OR]
RewriteCond %{QUERY_STRING} _REQUEST(=|[|%[0-9A-Z]{0,2})
RewriteRule .* index.php [F]
RewriteBase /
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteCond %{REQUEST_URI} !^/index.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php [L]

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9} /index.php HTTP/
RewriteRule ^index.php$ http://lik-astana.kz/index.php/ru/

RewriteCond %{HTTP_HOST} ^www.lik-astana.kz$ [NC]
RewriteRule ^(.*)$ http://lik-astana.kz/$1 [R=301,L]

так же включил вывод ошибок public $error_reporting = ‘development’; и выдал

Strict Standards: Declaration of JotcacheFileCache::get() should be compatible with that of JCacheController::get() in /var/www/vhosts/lik-astana.kz/httpdocs/plugins/system/jotcache/jotcache/JotcacheFileCache.php on line 89
Strict Standards: Declaration of JotcacheFileCache::store() should be compatible with that of JCacheController::store() in /var/www/vhosts/lik-astana.kz/httpdocs/plugins/system/jotcache/jotcache/JotcacheFileCache.php on line 89
Strict Standards: Declaration of JParameter::loadSetupFile() should be compatible with that of JRegistry::loadSetupFile() in /var/www/vhosts/lik-astana.kz/httpdocs/libraries/joomla/html/parameter.php on line 512

но строки 89 и 512 последний
89 это }}
510 — 512
      }
   }
}

так же не могу выключить плагины тоже выдает Internal Server Error при нажатии сохранить или закрыть без разницы что нажимать в любом случаи ошибка   

Пробуйте через phpMyAdmin отключить плагин jotcashe. Помнится с xCashe была похожая проблема пока не отключил

пишет 

MySQL вернула пустой результат (т.е. ноль строк). (Запрос занял 0.0007 сек.)

и все пусто

Т.е. в таблице pref__extensions нет Jotcashe? Не может быть

поставил enabled с 1 на 0
Правильно

выключил
plugin jotcache
component com_jotcache
оба enabled 0
Результата не дало

Ну, в общем-то, это и не ошибки, а предупреждения. Может, ещё кто подскажет что…

Что вообще может блокировать сохранения

Создал файл
administrator/.htaccess с таким содержанием

php_flag display_errors on
php_value error_reporting 8191

не каких ошибок не выдает

В статье мы расскажем, как исправить ошибку (код состояния) 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.

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

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

Windows 7 Windows 7 Service Pack 1 Windows Server 2008 R2 Windows Vista Service Pack 2 Windows Server 2008 Service Pack 2 Windows Server 2008 R2 Service Pack 1 Internet Information Services 7.5 More…Less

Symptoms

Consider the following scenario:

  • You install the module for ISAPI filters on a computer that is running Internet Information Services (IIS) 7.5.

  • You add an ISAPI filter to a website that is hosted on the computer.

  • The SF_NOTIFY_SEND_RAW_DATA notification is registered in the ISAPI filter.

    For example, the ISAPI filter contains the following code:

    DWORD WINAPI HttpFilterProc( PHTTP_FILTER_CONTEXT pfc,DWORD dwNotificationType, LPVOID pvNotification) {

    switch (dwNotificationType)
    {
    case SF_NOTIFY_SEND_RAW_DATA:
    return SF_STATUS_REQ_NEXT_NOTIFICATION;
    }

  • The website has a file that is larger than 256 megabytes (MB).

  • You try to download this file from the website.

In this scenario, you receive the following error message:

HTTP/1.1 500 Internal Server Errorrn
Content-Length: <number>rn
Content-Type: application/octet-streamrn
Last-Modified: <Day, Date, Time> GMTrn
Accept-Ranges: bytesrn
ETag: «f61017e15eafca1:0″rn
Server: Microsoft-IIS/7.5rn
X-Powered-By: ASP.NETrn
Date: <Day, Date, Time>rn
rn
Entity Body: all <number>MB file being pushed back to client even 500 status had been sent.

Cause

This issue occurs because of an error in the IIS Filter.dll file.

Resolution

Hotfix information

A supported hotfix is available from Microsoft. However, this hotfix is intended to correct only the problem that described in this article. Apply this hotfix only to systems that are experiencing the problem described in this article. This hotfix might receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next software update that contains this hotfix.

If the hotfix is available for download, there is a «Hotfix download available» section at the top of this Knowledge Base article. If this section does not appear, contact Microsoft Customer Service and Support to obtain the hotfix.

Note If additional issues occur or if any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. For a complete list of Microsoft Customer Service and Support telephone numbers or to create a separate service request, visit the following Microsoft website:

Prerequisites

To apply this hotfix, you must have the module for ISAPI filters of IIS 7.5 installed on a computer that is running one of the following operating systems:

  • Windows 7

  • Windows 7 Service Pack 1 (SP1)

  • Windows Server 2008 R2

  • Windows Server 2008 R2 SP1

  • Windows Vista Service Pack 2 (SP2)

  • Windows Server 2008 SP2

Note For more information about how to install the module for ISAPI Filters, visit the following Microsoft website:

How to install the module for ISAPI filters

Restart requirement

You must restart the computer after you apply this hotfix.

Hotfix replacement information


This hotfix does not replace a previously released hotfix.

File Information

The global version of this hotfix has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in Coordinated Universal Time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time item in Control Panel.

For all supported x86-based versions of Windows 7

File name

File version

File size

Date

Time

Platform

Filter.dll

7.5.7600.20919

55,808

09-Mar-2011

05:50

x86

Filter.dll

7.5.7601.21678

55,808

09-Mar-2011

05:27

x86

For all supported x64-based versions of Windows 7 and of Windows Server 2008 R2

File name

File version

File size

Date

Time

Platform

Filter.dll

7.5.7600.20919

73,728

09-Mar-2011

06:22

x64

Filter.dll

7.5.7601.21678

73,728

09-Mar-2011

06:13

x64

Filter.dll

7.5.7600.20919

55,808

09-Mar-2011

05:50

x86

Filter.dll

7.5.7601.21678

55,808

09-Mar-2011

05:27

x86

For all supported IA-64-based versions of Windows 7 and of Windows Server 2008

File name

File version

File size

Date

Time

Platform

Filter.dll

7.5.7600.20919

155,648

09-Mar-2011

05:14

IA-64

Filter.dll

7.5.7601.21678

155,648

09-Mar-2011

05:09

IA-64

Filter.dll

7.5.7600.20919

55,808

09-Mar-2011

05:50

x86

Filter.dll

7.5.7601.21678

55,808

09-Mar-2011

05:27

x86

For all supported x86-based versions of Windows Vista

File name

File version

File size

Date

Time

Platform

Filter.dll

7.0.6002.23302

54,784

13-Jan-2014

08:50

x86

For all supported x64-based versions of Windows Vista and of Windows Server 2008

File name

File version

File size

Date

Time

Platform

Filter.dll

7.0.6002.23302

72,704

13-Jan-2014

09:54

x64

Filter.dll

7.0.6002.23302

54,784

13-Jan-2014

08:50

x86

For all supported IA-64-based versions of Windows Vista and of Windows Server 2008

File name

File version

File size

Date

Time

Platform

Filter.dll

7.0.6002.23302

152,576

13-Jan-2014

07:12

IA-64

Filter.dll

7.0.6002.23302

54,784

13-Jan-2014

08:50

x86

Status

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the «Applies to» section.

References

For more information about ISAPI filter notifications, visit the following MSDN website:

General information about ISAPI filter notifications

More Information

Additional file information

Additional files for all supported x86-based versions of Windows 7

File name

Update.mum

File version

Not Applicable

File size

2,684

Date (UTC)

10-Mar-2011

Time (UTC)

01:05

Platform

Not Applicable

File name

X86_170b75a5533c0e4163baf479b6d06623_31bf3856ad364e35_6.1.7600.20919_none_109802ab03bd3ba1.manifest

File version

Not Applicable

File size

711

Date (UTC)

10-Mar-2011

Time (UTC)

01:05

Platform

Not Applicable

File name

X86_706b98cbda356cda373bec6912d15246_31bf3856ad364e35_6.1.7601.21678_none_c281dc365d4c709d.manifest

File version

Not Applicable

File size

711

Date (UTC)

10-Mar-2011

Time (UTC)

01:05

Platform

Not Applicable

File name

X86_microsoft-windows-i..isapifilterbinaries_31bf3856ad364e35_6.1.7600.20919_none_6d48d6b6b351f5d6.manifest

File version

Not Applicable

File size

3,299

Date (UTC)

09-Mar-2011

Time (UTC)

06:16

Platform

Not Applicable

File name

X86_microsoft-windows-i..isapifilterbinaries_31bf3856ad364e35_6.1.7601.21678_none_6eed5204b0a9f2ea.manifest

File version

Not Applicable

File size

3,299

Date (UTC)

09-Mar-2011

Time (UTC)

05:58

Platform

Not Applicable

Additional files for all supported x64-based versions of Windows 7 and of Windows Server 2008

File name

Amd64_25db803d5d9fd7ce8dcf477d25a552a3_31bf3856ad364e35_6.1.7600.20919_none_6bc7d3a6caf49366.manifest

File version

Not Applicable

File size

1,072

Date (UTC)

10-Mar-2011

Time (UTC)

01:05

Platform

Not Applicable

File name

Amd64_c0e4ca0e6bccc5f6fe456d17605d4f99_31bf3856ad364e35_6.1.7601.21678_none_9afd9d202523fb22.manifest

File version

Not Applicable

File size

1,072

Date (UTC)

10-Mar-2011

Time (UTC)

01:05

Platform

Not Applicable

File name

Amd64_microsoft-windows-i..isapifilterbinaries_31bf3856ad364e35_6.1.7600.20919_none_c967723a6baf670c.manifest

File version

Not Applicable

File size

3,305

Date (UTC)

09-Mar-2011

Time (UTC)

07:23

Platform

Not Applicable

File name

Amd64_microsoft-windows-i..isapifilterbinaries_31bf3856ad364e35_6.1.7601.21678_none_cb0bed8869076420.manifest

File version

Not Applicable

File size

3,305

Date (UTC)

09-Mar-2011

Time (UTC)

06:50

Platform

Not Applicable

File name

Update.mum

File version

Not Applicable

File size

3,120

Date (UTC)

10-Mar-2011

Time (UTC)

01:05

Platform

Not Applicable

File name

Wow64_microsoft-windows-i..isapifilterbinaries_31bf3856ad364e35_6.1.7600.20919_none_d3bc1c8ca0102907.manifest

File version

Not Applicable

File size

2,984

Date (UTC)

09-Mar-2011

Time (UTC)

06:08

Platform

Not Applicable

File name

Wow64_microsoft-windows-i..isapifilterbinaries_31bf3856ad364e35_6.1.7601.21678_none_d56097da9d68261b.manifest

File version

Not Applicable

File size

2,984

Date (UTC)

09-Mar-2011

Time (UTC)

05:49

Platform

Not Applicable

Additional files for all supported IA-64-based versions of Windows 7 and of Windows Server 2008

File name

Ia64_114a369cb73327a046e855d396428ecd_31bf3856ad364e35_6.1.7600.20919_none_d3d795b45abb92de.manifest

File version

Not Applicable

File size

1,070

Date (UTC)

10-Mar-2011

Time (UTC)

01:05

Platform

Not Applicable

File name

Ia64_e5692c9bab663abd2420cf132c917c65_31bf3856ad364e35_6.1.7601.21678_none_e7127781d41b48cb.manifest

File version

Not Applicable

File size

1,070

Date (UTC)

10-Mar-2011

Time (UTC)

01:05

Platform

Not Applicable

File name

Ia64_microsoft-windows-i..isapifilterbinaries_31bf3856ad364e35_6.1.7600.20919_none_6d4a7aacb34ffed2.manifest

File version

Not Applicable

File size

3,302

Date (UTC)

09-Mar-2011

Time (UTC)

07:13

Platform

Not Applicable

File name

Ia64_microsoft-windows-i..isapifilterbinaries_31bf3856ad364e35_6.1.7601.21678_none_6eeef5fab0a7fbe6.manifest

File version

Not Applicable

File size

3,302

Date (UTC)

09-Mar-2011

Time (UTC)

06:41

Platform

Not Applicable

File name

Update.mum

File version

Not Applicable

File size

2,347

Date (UTC)

10-Mar-2011

Time (UTC)

01:05

Platform

Not Applicable

File name

Wow64_microsoft-windows-i..isapifilterbinaries_31bf3856ad364e35_6.1.7600.20919_none_d3bc1c8ca0102907.manifest

File version

Not Applicable

File size

2,984

Date (UTC)

09-Mar-2011

Time (UTC)

06:08

Platform

Not Applicable

File name

Wow64_microsoft-windows-i..isapifilterbinaries_31bf3856ad364e35_6.1.7601.21678_none_d56097da9d68261b.manifest

File version

Not Applicable

File size

2,984

Date (UTC)

09-Mar-2011

Time (UTC)

05:49

Platform

Not Applicable

Additional files for all supported x86-based versions of Windows Vista

File name

Update.mum

File version

Not Applicable

File size

3,038

Date (UTC)

13-Jan-2014

Time (UTC)

20:19

Platform

Not Applicable

File name

X86_41a3fde56097923291d10b257dae2af5_31bf3856ad364e35_6.0.6002.23302_none_da97077f51d69b37.manifest

File version

Not Applicable

File size

703

Date (UTC)

13-Jan-2014

Time (UTC)

20:19

Platform

Not Applicable

File name

X86_microsoft-windows-iis-isapifilter_31bf3856ad364e35_6.0.6002.23302_none_560d0a511efd2e2e.manifest

File version

Not Applicable

File size

5,044

Date (UTC)

13-Jan-2014

Time (UTC)

09:37

Platform

Not Applicable

Additional files for all supported x64-based versions of Windows Vista and of Windows Server 2008

File name

Amd64_159ed15449994d2e8d47b827f1a2af47_31bf3856ad364e35_6.0.6002.23302_none_7999579918c45e53.manifest

File version

Not Applicable

File size

1,056

Date (UTC)

13-Jan-2014

Time (UTC)

20:19

Platform

Not Applicable

File name

Amd64_microsoft-windows-iis-isapifilter_31bf3856ad364e35_6.0.6002.23302_none_b22ba5d4d75a9f64.manifest

File version

Not Applicable

File size

5,054

Date (UTC)

13-Jan-2014

Time (UTC)

10:50

Platform

Not Applicable

File name

Update.mum

File version

Not Applicable

File size

3,062

Date (UTC)

13-Jan-2014

Time (UTC)

20:19

Platform

Not Applicable

File name

Wow64_microsoft-windows-iis-isapifilter_31bf3856ad364e35_6.0.6002.23302_none_bc8050270bbb615f.manifest

File version

Not Applicable

File size

3,537

Date (UTC)

13-Jan-2014

Time (UTC)

09:32

Platform

Not Applicable

Additional files for all supported IA-64-based versions of Windows Vista and of Windows Server 2008

File name

Ia64_b0b2dc7035867344b7d54607a1bb46f4_31bf3856ad364e35_6.0.6002.23302_none_3742c9e019dc1950.manifest

File version

Not Applicable

File size

1,054

Date (UTC)

13-Jan-2014

Time (UTC)

20:19

Platform

Not Applicable

File name

Ia64_microsoft-windows-iis-isapifilter_31bf3856ad364e35_6.0.6002.23302_none_560eae471efb372a.manifest

File version

Not Applicable

File size

5,049

Date (UTC)

13-Jan-2014

Time (UTC)

08:18

Platform

Not Applicable

File name

Update.mum

File version

Not Applicable

File size

1,581

Date (UTC)

13-Jan-2014

Time (UTC)

20:19

Platform

Not Applicable

File name

Wow64_microsoft-windows-iis-isapifilter_31bf3856ad364e35_6.0.6002.23302_none_bc8050270bbb615f.manifest

File version

Not Applicable

File size

3,537

Date (UTC)

13-Jan-2014

Time (UTC)

09:32

Platform

Not Applicable

Need more help?

Инструкция для пользователей и владельцев ресурса.

Что такое ошибка 500 и как её исправить

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

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

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

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

Что делать пользователю при ошибке 500

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

Подождать

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

Сообщить администратору ресурса

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

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

Что при ошибке 500 пользователю делать бессмысленно

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

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

  • перезагружать компьютер;
  • менять браузер;
  • переустанавливать ПО;
  • перезагружать роутер.

Что делать администратору при ошибке 500

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

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

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

Если вы используете веб‑сервер Apache, то в корне вашего сайта или во вложенных папках, скорее всего, есть файл .htaccess. В нём хранятся серверные настройки.

В большинстве случаев ресурс будет работать и без этого файла. Попробуйте переименовать .htaccess, например, в .htaccess_, а затем снова зайти на главную страницу сайта.

Если ошибка 500 исчезла, значит, дело именно в .htaccess. Проверьте синтаксис этого файла — возможно, при редактировании вы где‑то вставили лишний символ или допустили опечатку. Если есть предыдущая версия настроек, верните её и посмотрите, появляется ли ошибка 500.

Иногда помогает закомментировать строку Options в .htaccess — вставить # в самом её начале. Если это не сработало, закомментируйте и другие строки, а затем последовательно убирайте #, чтобы найти проблемное место в файле.

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

Посмотреть лог ошибок

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

Хостеры обычно указывают, где по умолчанию хранятся логи и как получить к ним доступ из панели управления. Эти сведения можно найти в разделах помощи или FAQ (frequently asked questions — часто задаваемые вопросы) на сайте хостинга.

Выставить права для CGI‑скриптов

Если вы используете CGI‑скрипты, то сами файлы с ними и папки, в которых они лежат, должны иметь право доступа 0755 (drwxr‑xr‑x). Такая комбинация разрешает запись в них только для владельца. Остальные пользователи могут лишь читать эти файлы и запускать их.

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

Проверить содержимое CGI‑скриптов

Корректные CGI‑скрипты должны иметь окончания строк в формате Unix (n), а не в формате Windows (rn). Чтобы сохранить правильный вариант, загружать код на большинство хостингов нужно по FTP в режиме ASCII. Если вы не знаете, какие настройки использовали, перезалейте скрипты и посмотрите, не исчезла ли ошибка 500.

Также CGI‑программы могут формировать неправильные HTTP‑заголовки ответа. В этом случае вы, скорее всего, увидите ошибки в логах.

Удалить или отключить недавно установленные плагины или компоненты

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

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

Оптимизировать скрипты

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

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

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

Увеличить объём оперативной памяти сервера

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

Попросить помощи

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

Правда, порой ответов приходится ждать долго. Поэтому имеет смысл зайти в похожие темы и попросить помощи там.

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

Читайте также 💿⚙️💻

  • Что делать, если тормозит браузер
  • Как исправить ошибку CPU Fan Error при загрузке компьютера
  • Что делать, если DNS-сервер не отвечает
  • Что означает 404 Not Found и другие ошибки веб-страниц
  • Что делать, если пропал интернет на Windows

Понравилась статья? Поделить с друзьями:
  • Невозможно отправить сообщение ошибка 0
  • Недостаточная обоснованность тезиса приводит к ошибке которая называется
  • Невозможно сохранить установки преобразования формата raw произошла ошибка прав записи
  • Недостаток ферментов как исправить
  • Невозможно отобразить страницу windows xp как исправить