Hosting PrestaShop: Wymagania, konfiguracja serwera i wydajność
Wybór hostingu dla PrestaShop — współdzielony vs VPS vs dedykowany, wymagania, konfiguracja serwera, SSL, CDN, migracja i czego unikać.
Wybór hostingu dla PrestaShop: co naprawdę się liczy
Hosting to fundament Twojego sklepu. Jeśli wybierzesz źle, żadna optymalizacja Cię nie uratuje. Ten poradnik jest subiektywny — prowadziliśmy PrestaShop na wszystkim, od hostingu współdzielonego za 3$/miesiąc po serwery dedykowane z 64GB RAM. Mówimy Ci, co działa i na co najlepiej wydać pieniądze.
Typy hostingu
Hosting współdzielony (3-15$/miesiąc)
Twój sklep dzieli serwer z setkami innych stron. Dostajesz cPanel, ograniczone ustawienia PHP i brak dostępu root.
- Zalety: Tani, zarządzany za Ciebie, zawiera hosting poczty
- Wady: „Hałaśliwi sąsiedzi” obniżają wydajność, brak SSH w tanich planach, nie można zainstalować Redis ani Varnish, wersja PHP często zablokowana, współdzielone IP szkodzi doręczalności maili
Wystarczający dla mniej niż 500 produktów i niskiego ruchu. Nie wystarczający do niczego poważnego.
VPS (5-60$/miesiąc)
Dedykowana pamięć RAM, CPU i dysk. Dostęp root. Pełna kontrola nad wszystkim.
- Zarządzany VPS: Dostawca zajmuje się aktualizacjami systemu i bezpieczeństwem. Ty zajmujesz się aplikacją. Panele zarządzania lub hosting zarządzany dodają 5-20$/miesiąc ponad koszt VPS.
- Niezarządzany VPS: Pusty serwer, dostęp SSH, zarządzasz wszystkim sam. Tańszy, ale wymaga znajomości Linuksa.
To optymalny wybór dla 90% sklepów PrestaShop.
Serwer dedykowany (80-300+$/miesiąc)
Cały serwer fizyczny. Brak narzutu wirtualizacji. Przesada dla większości sklepów, niezbędny przy 50K+ produktach z dużym ruchem.
Cloud VPS
Dostawcy Cloud VPS oferują rozliczenie godzinowe, szybkie uruchamianie, snapshoty i API. Ceny za 2GB/2vCPU wahają się od 5 do 15$/miesiąc w zależności od dostawcy i regionu. Europejscy dostawcy są zwykle tańsi niż amerykańscy przy porównywalnych parametrach.
Hosting zarządzany PrestaShop
Wstępnie skonfigurowany pod PrestaShop ze wsparciem specyficznym dla PS. Droższy, mniej elastyczny, często odsprzedawana infrastruktura.
Hosting zarządzany PS ma sens przy zerowej wiedzy o administracji serwerem. Dla wszystkich innych VPS ze stosem LEMP zapewnia lepszą wydajność przy niższym koszcie.
Minimalne wymagania wg wersji PS
PrestaShop 1.7
- PHP: 7.1-7.4 • MySQL: 5.5+ (zalecane 5.7) • RAM: min 2GB, zalecane 4GB
- Rozszerzenia: curl, gd, intl, mbstring, zip, xml, json, openssl
PrestaShop 8.x
- PHP: 7.2-8.1 (8.1 zdecydowanie zalecane) • MySQL: 5.6+ • RAM: min 4GB
- Rozszerzenia: Jak w 1.7, plus fileinfo, iconv
PrestaShop 9.x
- PHP: 8.1-8.4 (zalecane 8.2+) • MySQL: 8.0+ lub MariaDB 10.5+ • RAM: min 4GB, zalecane 8GB
- Rozszerzenia: Jak w 8.x, obowiązują wymagania Symfony 6.4
To są minimalne wymagania. Sklep z 5 000 produktów, 50 modułami i realnym ruchem potrzebuje 4-8GB RAM niezależnie od wersji. „Minimum” wystarczy do instalacji, nie do dobrej wydajności.
Poradnik doboru
| Rozmiar sklepu | Produkty | Dzienni odwiedzający | RAM | CPU | Dysk |
|---|---|---|---|---|---|
| Starter | <500 | <200 | 2GB | 1 rdzeń | 20GB SSD |
| Mały | 500-2K | 200-1K | 4GB | 2 rdzenie | 40GB SSD |
| Średni | 2K-10K | 1K-5K | 8GB | 4 rdzenie | 80GB SSD |
| Duży | 10K+ | 5K+ | 16GB+ | 4-8 rdzeni | 160GB+ SSD |
Sklep z 5 000 produktów i 5 zdjęciami każdy, przegenerowanymi w 7 typach obrazów, zużywa 10-20GB na same zdjęcia.
Co naprawdę wpływa na wydajność
Dostawcy uwielbiają podawać liczbę rdzeni, RAM i przepustowość. Oto co naprawdę robi różnicę, w kolejności:
1. Wersja PHP i OPcache
PHP 8.1 jest 20-40% szybszy niż 7.4 na identycznym kodzie. OPcache daje jeszcze więcej — bez niego PrestaShop rekompiluje setki plików PHP przy każdym załadowaniu strony. Z OPcache skompilowany kod serwowany jest z pamięci.
opcache.enable=1
opcache.memory_consumption=256
opcache.max_accelerated_files=20000
opcache.validate_timestamps=1
opcache.revalidate_freq=60
Jeśli Twój hosting nie obsługuje OPcache lub korzysta z PHP 7.x w 2026 roku, odejdź natychmiast.
2. I/O dysku — SSD jest obowiązkowy
PrestaShop odczytuje setki plików przy każdym żądaniu. Losowy odczyt HDD: 5-15ms. SSD: 0,1ms. Samo to daje 3-krotną różnicę. Nigdy nie uruchamiaj PrestaShop na HDD.
3. Konfiguracja MySQL
Typowa strona wykonuje 100-300 zapytań. innodb_buffer_pool_size określa, ile danych pozostaje w pamięci RAM. Ustaw na 50-70% RAM na dedykowanym serwerze bazy danych, 25-40% na połączonym serwerze app+db.
4. RAM
Każdy worker PHP-FPM zużywa 30-80MB. Dziesięć workerów = 300-800MB tylko na PHP. Dodaj MySQL, OPcache, Redis, system — 2GB to mało.
5. HTTP/2
Multipleksuje żądania w jednym połączeniu. Skraca czas ładowania o 20-40% w sklepach ładujących 60-80 zasobów. Wymaga HTTPS.
Hosting współdzielony: poznaj ograniczenia
Hosting współdzielony działa dla małych sklepów. Oto ściany, na które trafisz:
- Brak SSH: Nie możesz uruchamiać poleceń CLI, Composera ani poleceń konsoli
- Limity cron: Wielu dostawców ogranicza do co 15 minut. PrestaShop potrzebuje częstego crona.
- memory_limit ograniczony: 128-256MB to norma. Duże importy po cichu się nie udają.
- Brak Redis: Tylko cache oparty na plikach — wolny na współdzielonym dysku
- Współdzielone IP: Spam innej strony wpisuje Twoje IP na czarną listę. Maile z zamówieniami przestają dochodzić. Zobacz nasz poradnik doręczalności maili.
Wybierając hosting współdzielony, priorytetowo traktuj: dostęp SSH, kontrolę wersji PHP, obsługę OPcache i odpowiednie limity pamięci. Sprawdź cenę odnowienia — ceny promocyjne to marketing.
Ceny wprowadzające to marketing. 2,99$/miesiąc odnawia się za 10,99$. Zawsze sprawdzaj cenę odnowienia.
VPS: właściwy wybór dla większości sklepów
Dlaczego VPS wygrywa
- Pełny dostęp root — zainstaluj Redis, Varnish, Elasticsearch, cokolwiek
- Dedykowane zasoby — brak „hałaśliwych sąsiadów”
- Pełna kontrola OPcache i PHP-FPM
- Nieograniczony SSH i cron
- Nginx zamiast Apache
- Snapshoty serwera przed ryzykownymi zmianami
Na co zwrócić uwagę przy wyborze dostawcy VPS
- Dyski SSD/NVMe: Bezwzględne minimum. Jeśli nie podają, załóż HDD.
- Uczciwe ceny: 2GB/2vCPU powinno kosztować 5-15$/miesiąc. Jeśli to 30$, przepłacasz.
- Lokalizacja centrum danych: Wybierz blisko swoich klientów. Sklepy w UE potrzebują europejskich centrów danych.
- Snapshoty: Darmowe lub tanie snapshoty do szybkiego cofnięcia zmian przed aktualizacjami.
- Dobra dokumentacja: Będziesz konfigurować serwer. Jakość dokumentacji ma znaczenie.
Jeśli nigdy nie zarządzałeś serwerem Linux, rozważ usługę zarządzanego VPS lub panel zarządzania serwerem (dodatkowe 5-20$/miesiąc).
Konfiguracja stosu LEMP
# Debian 12 / Ubuntu 22.04
apt install nginx php8.2-fpm php8.2-mysql php8.2-curl \
php8.2-gd php8.2-intl php8.2-mbstring php8.2-xml \
php8.2-zip php8.2-opcache mariadb-server redis-server -y
mysql_secure_installation
Nigdy nie zarządzałeś serwerem Linux? Zacznij od zarządzanego VPS lub panelu zarządzania. Źle skonfigurowany VPS jest gorszy niż hosting współdzielony. Zobacz nasz poradnik zabezpieczania serwera.
Serwery dedykowane i cloud: kiedy potrzebujesz więcej
Przejdź poza VPS, gdy: 50K+ produktów, 5K+ dziennych odwiedzających, multistore z 5+ sklepami lub wymagane SLA na poziomie 99,99%.
Serwery dedykowane z 64GB RAM i dyskami NVMe mogą kosztować już od 40-60 EUR/miesiąc u europejskich dostawców. Więcej mocy niż potrzebuje większość sklepów, ale stosunek ceny do wydajności często bije Cloud VPS na dużą skalę.
Kroki skalowania: osobny serwer bazy danych (największy zysk), Redis na własnej instancji, następnie load balancer z wieloma serwerami aplikacji przy bardzo dużym ruchu (wymaga współdzielonego storage i sesji Redis).
Konfiguracja serwera dla PrestaShop
Używaj Nginx, nie Apache
Apache jest domyślny, bo używa go hosting współdzielony, nie dlatego, że jest lepszy. Nginx wykorzystuje zdarzeniowe I/O (10-30MB vs 300-800MB dla Apache prefork), serwuje pliki statyczne bez PHP i ma wbudowany cache FastCGI.
Jeśli musisz używać Apache, użyj mpm_event z PHP-FPM, nigdy mpm_prefork z mod_php.
Ustawienia PHP-FPM
pm = dynamic
pm.max_children = 20
pm.start_servers = 5
pm.min_spare_servers = 3
pm.max_spare_servers = 10
pm.max_requests = 500
php_admin_value[memory_limit] = 512M
php_admin_value[max_execution_time] = 300
Wzór na pm.max_children: (Dostępny RAM - MySQL - system) / 50MB na workera. Przy 4GB: (4000 - 1500 - 500) / 50 = 40. Ustaw 20-30, zostawiając zapas.
Strojenie MySQL
[mysqld]
innodb_buffer_pool_size = 2G
innodb_log_file_size = 256M
innodb_flush_log_at_trx_commit = 2
tmp_table_size = 64M
max_heap_table_size = 64M
slow_query_log = 1
long_query_time = 1
Włącz slow query log. Jedno złe zapytanie uruchamiane 200 razy na stronę jest gorsze niż wolny serwer. Log pozwala je znaleźć. Szczegóły w naszym poradniku wydajności.
Redis dla sesji i cache
PrestaShop domyślnie przechowuje sesje i cache na dysku. Redis przenosi oba do pamięci RAM — szybsze odczyty, brak I/O dysku, automatyczne wygaśnięcie. Używa 50-100MB i eliminuje najczęstszą przyczynę wolnych stron admina: blokowanie sesji na systemie plików.
SSL/TLS: bezwzględnie obowiązkowe
Każdy sklep potrzebuje HTTPS. Google karze HTTP. Przeglądarki wyświetlają ostrzeżenia. Dostawcy płatności tego wymagają.
Let's Encrypt
Darmowy, zautomatyzowany, odnawia się co 90 dni. Zainstaluj Certbot i zapomnij o problemie:
apt install certbot python3-certbot-nginx -y
certbot --nginx -d yourshop.com -d www.yourshop.com
Cloudflare SSL
Darmowy SSL przez ich proxy. Zawsze używaj trybu Full (Strict) — Flexible wysyła nieszyfrowany ruch do Twojego serwera. Ustaw nagłówek X-Forwarded-Proto, aby PrestaShop wykrywał HTTPS za proxy.
Wymuszenie HTTPS
Włącz w Shop Parameters → General, a następnie dodaj przekierowanie po stronie serwera:
# Nginx
server {
listen 80;
server_name yourshop.com;
return 301 https://yourshop.com$request_uri;
}
# Apache (.htaccess)
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
CDN: kiedy i jak
Dla sklepu obsługującego jeden region z lokalnym serwerem CDN daje minimalny przyrost prędkości. Wartość leży w cachowaniu i ochronie przed DDoS.
Darmowy plan Cloudflare wystarcza większości sklepów: globalny CDN, darmowy SSL, ochrona DDoS, HTTP/2, Brotli. Konfiguracja w Advanced Parameters → Performance → Media Servers.
- Cachuj agresywnie: Obrazy, CSS, JS, czcionki
- Nigdy nie cachuj: Admina, koszyka, kasy, mojego-konta, stron z ciasteczkami PrestaShop
Nigdy nie włączaj „Cache Everything” na całej domenie. Cachowane strony kasy oznaczają, że jeden klient widzi koszyk innego. Cachuj tylko zasoby statyczne i konkretne wzorce URL.
Kopie zapasowe: hosting to za mało
Kopie zapasowe Twojego dostawcy są cotygodniowe, na tej samej infrastrukturze i mogą nie działać, gdy będą potrzebne. To iluzja bezpieczeństwa, nie strategia. Dostawca pada = kopie też znikają. Ransomware szyfruje pliki, a zaszyfrowane wersje trafiają do kopii. Potrzebujesz bazy danych sprzed 2 godzin, nie z ostatniego wtorku.
Minimum: codzienne automatyczne dumpy bazy + kopie plików, przechowywane poza serwerem, 30-dniowa retencja, comiesiesne testowe przywracanie. Pełne szczegóły w naszym poradniku kopii zapasowych.
Migracja między hostingami
- Skonfiguruj nowy serwer z pasującą wersją PHP i rozszerzeniami
- Wyeksportuj bazę danych:
mysqldump -u root -p prestashop_db | gzip > backup.sql.gz - Przenieś pliki:
rsync -avz /var/www/html/prestashop/ newserver:/var/www/html/prestashop/ - Zaimportuj bazę danych na nowym serwerze
- Zaktualizuj dane dostępowe w
app/config/parameters.php - Napraw uprawnienia:
chown -R www-data:www-data, katalogi 755, pliki 644 - Wyczyść cache:
rm -rf var/cache/* - Przetestuj używając
/etc/hostsdo skierowania domeny na nowe IP - Obniż TTL DNS do 300 sekund 24 godziny przed przełączeniem
- Ostateczna synchronizacja bazy tuż przed zmianą DNS, aby uchwycić ostatnie zamówienia
Częste pułapki
- Uprawnienia plików: Użytkownik serwera www musi być właścicielem plików. Do zapisu: var/cache, img, upload, download
- Brakujący .htaccess: Narzędzia migracyjne pomijają ukryte pliki. Apache wymaga AllowOverride All.
- Niezgodność Base URL: Zaktualizuj
ps_shop_urljeśli zmienia się domena - Skok wersji PHP: 7.4 na 8.1 może zepsuć moduły używające przestarzałych funkcji
Nigdy nie przełączaj DNS przed testami. Użyj lokalnego /etc/hosts, aby skierować domenę na nowe IP i przetestuj kasę, admina i wszystkie kluczowe strony.
Sygnały ostrzegawcze: kiedy odejść
Techniczne
- Brak SSH: Nie można prawidłowo diagnozować ani wdrażać
- PHP 7.x w 2026: Koniec wsparcia, znane niezalatane podatności
- Brak OPcache: 3-5x gorsza wydajność bez powodu
- Dyski HDD: Jeśli nie podają SSD/NVMe, załóż HDD
- Zablokowany php.ini: Nie można prawidłowo uruchomić PrestaShop
Biznesowe
- „Nielimitowane” cokolwiek: Nic nie jest nielimitowane. Duszą Cię throttlingiem.
- Marki-wydmuszki jednego holdingu: Wiele „różnych” hostingów należących do tej samej firmy — ta sama przeciążona infrastruktura, inne logo
- Brak SLA na uptime: Nie są pewni własnej infrastruktury
- Odpowiedź supportu trwa dniami: Sklep leżący o 2 w nocy wymaga minut, nie dni roboczych
- Wymuszany roczny billing: Liczą na to, że nie odejdziesz, gdy się rozczarujesz
Najtańszy hosting to ten, który nie padnie w Black Friday. Oszczędność 5$/miesiąc, która kosztuje 5 000$ w utraconych sprzedażach, to nie oszczędność.
Checklista hostingu
Zweryfikuj każdy punkt przed zobowiązaniem się u dostawcy.
Serwer
- Wersja PHP zgodna z wymaganiami PS
- Wszystkie wymagane rozszerzenia PHP dostępne
- php.ini konfigurowalny (memory_limit, OPcache)
- Wersja MySQL/MariaDB kompatybilna
- Dyski SSD lub NVMe
- Dostęp SSH
- Nieograniczony cron
Wydajność
- OPcache włączony i konfigurowalny
- Wystarczająca ilość RAM (zalecane 4GB+)
- Obsługa HTTP/2
- Redis lub Memcached dostępny
Niezawodność
- SLA na uptime 99,9%+
- Automatyczne i ręczne kopie zapasowe
- Czas reakcji supportu poniżej godziny w sytuacjach krytycznych
- Centrum danych blisko Twoich klientów
Ceny
- Cena odnowienia sprawdzona (nie tylko promocyjna)
- Dostępne rozliczenie miesięczne
- Limity transferu zrozumiane
- Brak ograniczeń migracyjnych
Nasze rekomendacje
- Na start: Cloud VPS z 2GB RAM (5-10$/miesiąc) + darmowy CDN/SSL. Przewyższa większość hostingów współdzielonych za 15$/miesiąc.
- Rosnący sklep: Zarządzany VPS (15-30$/miesiąc). Oni zarządzają serwerem, Ty skupiasz się na sprzedaży.
- Ustabilizowany (1K+ odwiedzających/dzień): VPS z 8-16GB RAM, dedykowany MariaDB, Redis, Nginx + cache FastCGI. 15-40$/miesiąc.
- Duży katalog, wysoki ruch: Serwer dedykowany lub rozdzielona architektura cloudowa. 50-100+$/miesiąc.
Skonfiguruj monitoring od pierwszego dnia — UptimeRobot jest darmowy dla 50 monitorów. Gdy hosting jest ogarniety: zoptymalizuj zgodnie z naszym poradnikiem wydajności, zabezpiecz serwer zgodnie z naszą checklistą bezpieczeństwa i skonfiguruj prawdziwe kopie zapasowe z naszym poradnikiem backupów. Hosting to fundament — ale dopiero początek.
More guides available
Browse our knowledge base for more practical PrestaShop tutorials, or reach out if you need help.