Opencart 500 ошибка: как найти причину и починить

Ошибка 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 укажите ваш логин хостинга: Как узнать логин хостинга.

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

ps aux | grep [u]1234567

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

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


Код ошибки 500

Где:

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

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

kill 40522

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

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

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

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

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

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

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

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

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

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



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


  1. 1.

    Войдите в панель управления WordPress. Если вы пользуетесь услугой REG.Site, войти в панель управления CMS можно прямо из Личного кабинета.



  2. 2.

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



  3. 3.

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



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

Помогла ли вам статья?

Да

9
раз уже
помогла

Ошибка 500 internal server error в OpenCart » Sysmasters.net

Сегодня я расскажу об одной достаточно редко встречающейся, однако зачастую «трудной» в определении ошибке, возникающей в процессе работы сайтов, созданных на основе CMS OpenCart.

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

Внезапно возникшая ошибка 500 в админ-панели OpenCart

Кроме того та же ошибка начинает возникать как в некоторых местах страницы, так и на отдельных страницах целиком!

Ещё одним «симптомом» является то, что восстановление файлов сайта из бекапа временно устраняет ошибку (чем более давний бекап взят — тем дольше работает сайт)

При этом в логах сервера нет ничего вразумительного о том,  какой именно файл или событие  послужили причиной ошибок, а в error-логе есть только записи вида:

12:08:51 (104)Connection reset by peer: mod_fcgid: error reading data from FastCGI server
12:08:51 (104)Connection reset by peer: mod_fcgid: ap_pass_brigade failed in handle_request_ipc function
12:05:22 (104)Connection reset by peer: mod_fcgid: ap_pass_brigade failed in handle_request_ipc function
12:05:22 (104)Connection reset by peer: mod_fcgid: error reading data from FastCGI server
12:04:09 (104)Connection reset by peer: mod_fcgid: error reading data from FastCGI server
12:04:09 (104)Connection reset by peer: mod_fcgid: ap_pass_brigade failed in handle_request_ipc function

Иногда (зависит от используемой на сервере ОС и его настроек), ошибка в логах может выглядеть немного более информативно:

[Thu Nov 12 08:12:32 2013] [warn] mod_fcgid: read data timeout in 30 seconds
[Thu Nov 12 08:12:32 2013] [warn] (60)Operation timed out: mod_fcgid: ap_pass_brigade failed in handle_request function

В обоих случаях суть сводится к тому, что некий скрипт после запуска не может вовремя отдать нужные данные  (возможно, уходя в вечный цикл, или зависая по причине отсутствия доступа к нужному ресурсу), а попросту говоря — «зависает» на время свыше разрешенного на сервере переменной max_execution_time, после чего принудительно завершается, так сказать не взирая ни на что.

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

Выявить виновника в таких случаях достаточно просто. Для этого нужно сравнить объём файлов из рабочего бекапа и файлы сайта с ошибкой.

В случае с OpenCart очень часто «виновником торжества» является лог-файл  модуля vQmod, расположенный в папке корневая_папка_сайта/vqmod/vqmod.log

Устранение проблемы.

Устранить ошибку можно двумя путями.

Первый путь. Периодически просто удалять файл  vqmod.log и создавать на его месте такой же но пустой.

Второй путь. Обновить vQmod с сайта разработчика. По их словам в последних версиях мода подобной ошибки нет, так как логи очищаются каждые 7 дней автоматически. Скачать новую версию можно тут: https://code.google.com/p/vqmod/downloads/list

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

От RadioHost.gr на 14 октября 2013 г.

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

Пожалуйста, свяжитесь с администратором сервера, [email protected] и сообщите ему время возникновения ошибки и все, что вы могли сделать, что могло вызвать ошибку.

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

Кроме того, при попытке использовать ErrorDocument для обработки запроса возникла ошибка 500 Internal Server Error.

Проверьте свой .htaccess и удалите его в php_value memory_limit 256M

# 1. Чтобы использовать псевдоним URL, вам необходимо запустить apache с включенным mod_rewrite.

# 2. В вашем каталоге opencart переименуйте htaccess.txt в .htaccess

# По любым вопросам поддержки посетите: http://www.opencart.com

Options +FollowSymlinks

# Prevent Directoy listing
Параметры -Индексы

# Запретить прямой доступ к файлам

Запретить заказ, разрешить
Запретить всем

# Настройки SEO URL
RewriteEngine On
# Если ваша установка opencart не запускается в основной веб-папке, убедитесь, что папка, в которой она запускается, т.е. / становится /shop/

RewriteBase /
RewriteRule sitemap.xml /index.php?route=feed/google_sitemap
RewriteCond %{REQUEST_FILENAME} !-f 9?]*) index.php?_route_=$1 [L, QSA]
php_value memory_limit 256M
### Дополнительные настройки, которые могут потребоваться для некоторых серверов
### Раскомментируйте команды, удалив перед ними знак #.
### Если вы получаете «Внутреннюю ошибку сервера 500» после включения любого из следующих параметров, восстановите #, так как это означает, что ваш хост не разрешает это.

# 1. Если ваша корзина позволяет добавлять только один товар за раз, возможно, включена функция register_globals. Это может помочь отключить его:
# php_flag register_globals off

# 2. Если в вашей корзине включены волшебные кавычки, это может помочь отключить их:
# php_flag magic_quotes_gpc Off

# 3. Установите максимальный размер загружаемого файла. Большинство хостов ограничат это и не позволят его переопределить, но вы можете попробовать
# php_value upload_max_filesize 999M

# 4. установить максимальный размер сообщения. раскомментируйте эту строку, если у вас много вариантов продукта или возникают ошибки, когда формы не сохраняют все поля
# php_value post_max_size 999M

# 5. установить максимальное время выполнения скрипта. раскомментируйте эту строку, если у вас много вариантов продукта или возникают ошибки, когда формы не сохраняют все поля
# php_value max_execution_time 200

# 6. установите максимальное время для получения ввода. Раскомментируйте эту строку, если у вас много вариантов продукта или возникают ошибки, когда формы не сохраняют все поля. Tagged .htaccess, memory_limit, Внутренняя ошибка сервера Opencart, Внутренняя ошибка сервера Opencart 500

Внутренняя ошибка сервера 500 Быстрые исправления

Саманта

Сообщения об ошибках столь же разочаровывают, сколь и неизбежны. (И да, они все еще случаются даже с отличным веб-хостингом, хотя и реже.) Мы сталкиваемся с некоторыми сообщениями об ошибках так часто, что все мы знаем, что делать, когда они появляются. Так, например, вряд ли нас озадачит сообщение об ошибке «404 страница не найдена». Но некоторые сообщения об ошибках появляются немного реже и могут вызвать у нас чувство разочарования и замешательства.

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

Давайте прыгать!

Содержание

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

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

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

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

Но если вы видите сообщение об ошибке на вашем веб-сайте , вам нужно исправить это быстро .

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

Быстрое исправление внутренней ошибки сервера 500 4

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

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

5 советов по устранению внутренней ошибки сервера 500:

1. Перезагрузите веб-страницу

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

Если , что не работает, перейдите к следующему совету:

2. Проверьте свои плагины и темы

Быстрые исправления для внутренней ошибки сервера 500 5 установка нового плагина или темы, и если перезагрузка веб-страницы не помогла, устраните проблему, отключив все ваши плагины . (Не беспокойтесь. При этом вы не потеряете данные.) Чтобы деактивировать свои плагины, перейдите к своему администратору, просмотрите «Плагины» и выберите «Деактивировать» в меню массовых действий.

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

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

3. Очистите кеш браузера

Чтобы очистить кеш в Google Chrome, щелкните значок с тремя точками в правом верхнем углу окна браузера. Затем выберите Дополнительные инструменты >> Очистить данные просмотра . (Убедитесь, что установлен только флажок «Кэшированные изображения и файлы», иначе вы удалите не только кеш браузера.)

4. Проверьте свои разрешения

или папку на вашем сервере, это также вызовет внутреннюю ошибку сервера 500.

Следуйте этим рекомендациям для разрешений:

  • Никогда не давать каталоги 777. (Это относится и к каталогам загрузки.)
  • Все файлы должны иметь номер 644 (-rw-r–r–) или 640.
  • Все каталоги должны иметь номер 755 (drwxr-xr-x) или 750.

5. Подождите и вернитесь позже

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