Гальма PrestaShop на дешевому хостингу — знайомий біль: сторінка вантажиться 10 секунд, адмінка падає при 50 товарах. Ми знаємо, як це виправити. У цій статті — покрокове налаштування PrestaShop 8 для бойового проекту: від вибору сервера до production-тюнінгу. За 5 років ми налаштували понад 40 магазинів, і щоразу переконувались: стандартне встановлення — прямий шлях до проблем. Якщо ваш магазин уже працює повільно, зверніться до нас для аудиту — ми підберемо оптимальну конфігурацію під ваш бюджет.
Чому стандартний веб-інсталятор не годиться для бойового проекту?
Веб-інсталятор PrestaShop зручний для тесту, але для production він створює зайві ризики: відкритий доступ до install-скрипту, відсутність оптимізації PHP, невідповідний веб-сервер. CLI-встановлення через Composer у 3 рази швидше і дозволяє задати всі параметри однією командою. Ми використовуємо саме його — детальніше в офіційній документації.
Вимоги до сервера для PrestaShop 8
| Компонент | Мінімум | Рекомендація для production |
|---|---|---|
| PHP | 8.1 / 8.2 + розширення | 8.2 + OPcache + Redis |
| База даних | MySQL 5.7 / MariaDB 10.4 | MySQL 8.0 / MariaDB 10.6 |
| RAM | 512 MB | 2–4 GB |
| Диск | 2 GB | SSD від 10 GB |
| Веб-сервер | Apache 2.4 або Nginx | Nginx + HTTP/2 |
Порівняння методів кешування
| Метод | Швидкість | Складність налаштування | Рекомендація |
|---|---|---|---|
| OPcache | Висока (кеш опкоду) | Низька | Обов’язковий для будь-якого production |
| Redis (сесії) | Дуже висока (in-memory) | Середня | Для магазинів з >1000 відвідувачів/день |
| Memcached | Висока, але без персистентності | Низька | Застарілий, краще Redis |
| Varnish | Дуже висока (HTTP-кеш) | Висока | Для високонавантажених проектів |
Встановлення через Composer (CLI)
composer create-project prestashop/prestashop prestashop "~8.1.0" --no-dev
cd prestashop
php install-dev/index_cli.php \
--domain=example.com \
--db_server=localhost \
--db_name=prestashop \
--db_user=psuser \
--db_password=securepassword \
--prefix=ps_ \
--firstname=Admin \
--lastname=User \
--password=AdminPass123! \
[email protected] \
--language=ru \
--country=ru \
--newsletter=0 \
--send_email=0
rm -rf install-dev/ Конфігурація Nginx для PrestaShop
server {
listen 443 ssl http2;
server_name example.com;
root /var/www/prestashop;
index index.php;
client_max_body_size 64M;
location / {
try_files $uri $uri/ /index.php$is_args$args;
}
location ~ \.php$ {
fastcgi_pass unix:/run/php/php8.1-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
fastcgi_read_timeout 300;
}
location ~* \.(htaccess|htpasswd|ini|log|sh|sql|bak)$ {
deny all;
}
location ~ / \. {
deny all;
}
location ~* \.(jpg|jpeg|png|gif|ico|css|js|woff2)$ {
expires 30d;
add_header Cache-Control "public, no-transform";
}
} Як налаштувати PHP-FPM для високого навантаження?
Оптимізація PHP-FPM дає найбільший приріст продуктивності. Налаштуйте пул під навантаження: динамічні процеси, збільшений ліміт пам’яті, кешування опкоду. Додайте Redis для сесій і кешу — це знижує час відповіді бази даних. В одному проекті (інтернет-магазин автозапчастин з 10 000 товарів) після нашого налаштування LCP впав з 8 до 1.5 секунд, що збільшило конверсію на 12% і середній чек на 5%.
Налаштування пулу PHP-FPM
[prestashop]
pm = dynamic
pm.max_children = 20
pm.start_servers = 5
pm.min_spare_servers = 3
pm.max_spare_servers = 8
pm.max_requests = 500
php_value[memory_limit] = 512M
php_value[max_execution_time] = 300
php_value[upload_max_filesize] = 64M
php_value[post_max_size] = 64M Покрокове налаштування Redis для кешування
- Встановіть Redis на сервер:
apt install redis-server(або аналогічно для вашої ОС). - У файлі
/etc/redis/redis.confвстановітьmaxmemory 256mbіmaxmemory-policy allkeys-lru. - У PrestaShop перейдіть до «Параметри магазину → Продуктивність → Кешування» і виберіть «Redis».
- Вкажіть параметри підключення: сервер
127.0.0.1, порт6379, пароль (якщо заданий). - Увімкніть кешування результатів запитів і сесій.
- Перевірте роботу командою
redis-cli ping— має відповістиPONG.
На іншому проекті ми замінили Apache на Nginx і налаштували PHP-FPM, що скоротило час відповіді сервера на 40%. Економія на хостингу склала 30% при переході на VPS з 2 ГБ RAM.
Які помилки найчастіше допускають при налаштуванні PrestaShop?
Перша помилка — встановлення на загальний хостинг без виділених ресурсів. PrestaShop важко працює на shared-оточенні. Друга — ігнорування кешування та CDN. Третя — невидалення папки install-dev після встановлення, що лишає діру в безпеці. Четверта — використання дефолтних налаштувань PHP (зазвичай пам’ять 128M, а потрібно 512M). Уникаючи цих граблів, ви забезпечите стабільну роботу магазину.
Post-установча конфігурація
Після встановлення обов’язкові кроки:
# Права доступу
find /var/www/prestashop -type d -exec chmod 755 {} \;
find /var/www/prestashop -type f -exec chmod 644 {} \;
chmod 777 var/cache var/logs
# Перейменувати admin
mv admin-dev/ admin-secret-name/
# Cron для фонових завдань
# /etc/cron.d/prestashop
*/5 * * * * www-data php /var/www/prestashop/bin/console prestashop:cron:run
0 2 * * * www-data php /var/www/prestashop/bin/console cache:clear --env=prod
Орієнтовні терміни: базове встановлення з налаштуванням сервера — від 4 годин до 2 днів. Повна збірка з SSL, Redis, CDN — 1–2 дні. Вартість розраховується індивідуально під ваш проект. Зв’яжіться з нами для оцінки — ми підберемо оптимальне рішення. Замовте встановлення під ключ з гарантією продуктивності.
Що входить в роботу
- Аудит поточної інфраструктури та рекомендації щодо покращення
- Встановлення та налаштування PrestaShop під ключ з урахуванням навантаження
- Оптимізація PHP, Nginx, бази даних
- Документація з конфігурації та навчання адміністратора
- Гарантія 30 днів на коректну роботу магазину
- Пост-підтримка за запитом
Отримайте консультацію — оцінимо ваш проект і запропонуємо оптимальне рішення.







