Навигация
Присоединяйтесь к нашему Telegram-каналу!☝

Будьте в курсе последних новинок и фишек e-commerce: советы, полезные инструменты и эксклюзивные материалы.

Блог Rss rss_feed

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

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

Внутренняя ошибка сервера 500 (HTTP Error 500) — одна из самых неприятных проблем, с которой сталкиваются владельцы интернет-магазинов. В отличие от ошибок 404 или 403, она не даёт явного объяснения причины и часто появляется внезапно — сайт просто перестаёт работать.

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

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

Ошибка 500 — это общий ответ сервера, означающий:

«Сервер столкнулся с проблемой и не может обработать запрос»

Важно понимать:
это не ошибка браузера и не ошибка пользователя — проблема всегда на стороне сервера или приложения (вашего магазина).

Как выглядит ошибка

Она может отображаться по-разному:

  • 500 Internal Server Error

  • Белый экран (White Screen of Death)

  • Кастомная страница хостинга

  • Пустая страница без ошибок

В PrestaShop часто встречается именно белый экран, что особенно усложняет диагностику.

Основные причины ошибки 500 в интернет-магазине

1. Ошибки в PHP-коде

Самая частая причина:

  • синтаксические ошибки

  • вызов несуществующих методов

  • несовместимость версий PHP

  • ошибки в кастомных модулях

Пример:

Call to undefined method

2. Проблемы с модулями PrestaShop

После:

  • установки нового модуля

  • обновления модуля

  • удаления файлов вручную

может возникнуть конфликт.

Особенно часто ломаются:

  • override-классы

  • хуки

  • автозагрузка классов

3. Неправильные права доступа (permissions)

Если у файлов или папок неверные права:

  • сервер не может прочитать файл

  • или выполнить скрипт

Стандарт:

  • папки: 755

  • файлы: 644

4. Ошибки в .htaccess

Файл .htaccess управляет маршрутизацией и правилами сервера.

Ошибка может появиться после:

  • включения ЧПУ (SEO URLs)

  • ручного редактирования

  • миграции сайта

5. Ограничения сервера

Хостинг может «убить» выполнение скрипта из-за:

  • нехватки памяти (memory_limit)

  • долгого выполнения (max_execution_time)

  • ограничений CPU

6. Ошибки базы данных

Например:

  • повреждённые таблицы

  • неправильные запросы

  • несовместимость структуры

7. Обновление PrestaShop

После обновления ядра:

  • старые модули могут не работать

  • override-файлы конфликтуют

  • структура БД меняется

Как найти причину ошибки 500

Шаг 1. Включить отображение ошибок

Если у вас есть доступ в админ-панель PrestaShop, самый простой способ — включить режим отладки через интерфейс:

Перейдите в:

Расширенные параметры → Производительность

И включите режим отладки (Debug Mode).

Если доступа к админке нет (например, сайт полностью не открывается), тогда используйте способ через код.

В PrestaShop:

Откройте файл:

/config/defines.inc.php

Найдите строку:

define('_PS_MODE_DEV_', false);

Замените на:

define('_PS_MODE_DEV_', true);

После этого вместо белого экрана вы увидите реальную ошибку.

Шаг 2. Проверить логи сервера

Логи — самый надёжный источник информации.

Где искать:

  • /var/log/apache2/error.log

  • /var/log/nginx/error.log

  • лог в панели хостинга

Там будет точная причина ошибки.

Шаг 3. Проверить последние изменения

  • Устанавливался ли модуль?

  • Обновлялась ли PrestaShop?

  • Менялся ли код?

Если да — откатите изменения.

Шаг 4. Отключить модули

Если админка не открывается:

  1. Зайдите в /modules/

  2. Переименуйте подозрительный модуль

Например:

mymodule → mymodule_off

Шаг 5. Перегенерировать .htaccess

Удалите файл .htaccess и создайте новый:

В админке:

Параметры магазина → Трафик и SEO → Сохранить

Шаг 6. Проверить версию PHP

Частая проблема:

  • старый модуль + новый PHP (например 8.2)

  • или наоборот

Рекомендация:

  • PrestaShop 1.7 → PHP 7.4

  • PrestaShop 8 → PHP 8.1+

Шаг 7. Проверить права доступа

Убедитесь:

/var/www/public_html → 755 файлы → 644

Частые реальные случаи

Кейс 1: Белый экран после установки модуля

Причина: ошибка в override
Решение: очистить /override/ и очистить кеш

Кейс 2: Ошибка после обновления

Причина: несовместимость модулей
Решение: отключить сторонние модули

Кейс 3: Ошибка только на фронте

Причина: шаблон (theme)
Решение: переключиться на стандартную тему

Кейс 4: Ошибка при оформлении заказа

Причина: сбой в модуле-оплаты
Решение: проверить логи и API

Как предотвратить ошибку 500

1. Делайте бэкапы

Перед любыми изменениями:

  • файлы

  • база данных

2. Следите за совместимостью

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

  • версию PrestaShop

  • версию PHP

3. Минимизируйте override

Чем меньше override — тем стабильнее система.

4. Мониторинг

Используйте:

  • uptime-мониторинг

  • логирование ошибок

  • сервисы для поддержки

У нас есть платформа для вашего магазина, которая следит, очищает, блокирует ботов, мониторит доступность магазина и многое другое подробнее >

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

Был ли этот пост полезен для вас?

    
👈 Присоединяйтесь к нашему Telegram-каналу!

Будьте в курсе последних новинок и фишек e-commerce: советы, полезные инструменты и эксклюзивные материалы.

👈 Присоединяйтесь к нашему Telegram-каналу!

Будьте в курсе последних новинок и фишек e-commerce: советы, полезные инструменты и эксклюзивные материалы.

На данный момент комментариев нет
close

Checkout

close

Избранное

Promo