Pomoc: pon-pt 9:00-17:00kontakt@sorahost.plWebmailZgłoszeniaPanel klienta
Sklepy internetowe

Aktualizacja PHP w sklepie bez awarii

Aktualizacja PHP w sklepie to siedem kroków: sprawdzenie wersji, zgodności modułów, kopia zapasowa, test na kopii sklepu, zmiana w panelu, kontrola i plan powrotu. Samo przełączenie trwa minutę, a całe przygotowanie zwykle 2 do 3 godzin.

Będziesz potrzebować

  • Dostępu do panelu hostingu z wyborem wersji PHP
  • Dostępu do panelu sklepu (WooCommerce lub PrestaShop)
  • Listy wtyczek lub modułów, motywu i ich wersji
  • Wolnej godziny w porze najmniejszego ruchu w sklepie

Ile to trwa

Ok. 2 do 3 godzin przygotowania, plus kilka dni obserwacji po zmianie.

Zanim zaczniesz

Po co w ogóle aktualizować PHP?

Bo każda wersja PHP ma datę końca wsparcia. Po niej twórcy PHP przestają łatać luki bezpieczeństwa, a autorzy wtyczek i modułów po kolei przestają testować na niej swój kod. Sklep na starym PHP działa, dopóki pewnego dnia aktualizacja modułu płatności nie odmówi instalacji.

Jest też druga strona: nowsze wersje PHP są zwykle szybsze. To nie rewolucja, ale w sklepie z dużą liczbą produktów różnicę widać w panelu i przy imporcie.

Mimo to nigdy nie aktualizuję PHP „bo wyszła nowa wersja”. Przeskakuję o jedną wersję, po sprawdzeniu zgodności, w dzień roboczy rano, i zawsze mam przygotowaną drogę powrotu. Większość awarii po zmianie PHP, które widziałem, nie wynikała z samego PHP, tylko z jednego starego modułu, którego nikt nie sprawdził.

Krok 1 z 7

Sprawdź obecną wersję PHP i wersję sklepu

Ok. 5 minut · panel sklepu
  1. 1W WordPressie otwórz Narzędzia, Kondycja witryny, zakładka Informacje, sekcja Serwer.
  2. 2W PrestaShop otwórz Parametry zaawansowane, a potem Informacje.
  3. 3Zapisz wersję PHP, wersję WordPressa i WooCommerce albo wersję PrestaShop.

Na oficjalnej stronie PHP, w zestawieniu wspieranych wersji, sprawdź, do kiedy Twoja wersja dostaje poprawki bezpieczeństwa. Jeśli ten termin już minął albo mija w tym roku, czas planować aktualizację.

Krok 2 z 7

Sprawdź zgodność sklepu, motywu i modułów

Ok. 30 minut · dokumentacja i opisy wtyczek

To najważniejszy krok i jedyny, którego nie da się pominąć. Sklep jest zgodny z nową wersją PHP dopiero wtedy, gdy zgodne są wszystkie jego elementy.

  1. 1Sprawdź w dokumentacji WooCommerce lub PrestaShop, jakie wersje PHP obsługuje Twoja wersja sklepu.
  2. 2Przejrzyj opis każdej wtyczki lub modułu i motywu: minimalną wersję PHP i datę ostatniej aktualizacji.
  3. 3Wypisz elementy, które nie były aktualizowane od ponad roku, i sprawdź je ze szczególną uwagą.
Krok 3 z 7

Zrób pełną kopię zapasową

Ok. 15 minut · panel hostingu

Kopia to Twoja polisa. Nawet jeśli hosting robi kopie codziennie, przed zmianą PHP zrób własną: pliki i bazę danych z tej chwili, nie z wczorajszej nocy.

Jak to zrobić krok po kroku, opisujemy dla WordPressa w poradniku Jak zrobić kopię zapasową WordPressa?. Dla PrestaShop wystarczy archiwum katalogu sklepu i eksport bazy z phpMyAdmin, tak jak w krokach 1 i 2 poradnika Jak przenieść PrestaShop na inny hosting?.

Krok 4 z 7

Przetestuj nową wersję na kopii sklepu

Ok. 1 godzina · subdomena testowa

Najbezpieczniej sprawdzić nowe PHP na kopii sklepu, a nie na sklepie, w którym klienci składają zamówienia. Kopię stawiasz na subdomenie, np. test.twojsklep.pl, i ustawiasz dla niej nową wersję PHP.

  1. 1Utwórz subdomenę i nową bazę danych.
  2. 2Skopiuj pliki sklepu i zaimportuj bazę z kroku 3. W pliku konfiguracyjnym kopii wpisz dane nowej bazy, a adres sklepu zmień na subdomenę, żeby kopia nie pracowała na bazie żywego sklepu.
  3. 3Ustaw w panelu hostingu nową wersję PHP tylko dla subdomeny.
  4. 4Przejdź przez sklep: produkt, koszyk, zamówienie, panel administracyjny, eksporty i importy.
Krok 5 z 7

Zmień wersję PHP w sklepie

Ok. 5 minut · panel hostingu

Gdy kopia działa bez błędów, zmień wersję PHP dla głównej domeny. Zrób to w dzień roboczy rano, w porze najmniejszego ruchu, a nie w piątek po południu.

  1. 1W panelu hostingu otwórz wybór wersji PHP dla domeny sklepu.
  2. 2Wybierz tę samą wersję, którą testowałeś na kopii.
  3. 3Sprawdź, czy włączone są te same rozszerzenia PHP co wcześniej, i zapisz.
Krok 6 z 7

Sprawdź sklep i log błędów

Ok. 20 minut · sklep i panel hostingu

Przejdź przez sklep tak jak na kopii: strona główna, kategoria, produkt, koszyk, zamówienie testowe i panel administracyjny. Potem zajrzyj do logu błędów, bo część problemów nie jest widoczna na stronie.

W WordPressie możesz na chwilę włączyć zapis błędów do pliku. W pliku wp-config.php dopisz trzy linie, a istniejącą linię z WP_DEBUG zamień, zamiast ją dublować. Błędy trafią do pliku wp-content/debug.log, bez pokazywania ich klientom.

wp-config.php
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );

Po sprawdzeniu przywróć WP_DEBUG na false. W PrestaShop sprawdź log błędów w panelu hostingu, a trybu debugowania sklepu nie włączaj na działającym sklepie, bo pokazuje błędy klientom.

Krok 7 z 7

Przygotuj plan powrotu

Ok. 5 minut · panel hostingu

Plan powrotu jest prosty: jeśli coś istotnego nie działa, wracasz do poprzedniej wersji PHP w panelu i dopiero potem szukasz przyczyny na kopii sklepu. Zapisz sobie, jaka to była wersja, i nie wahaj się tego zrobić.

Przez kilka dni po zmianie obserwuj zamówienia, maile z formularzy i log błędów. Kopię zapasową z kroku 3 trzymaj co najmniej tydzień.

Lista kontrolna

0 z 7 sprawdzone

Pytania

Czy mogę przeskoczyć kilka wersji PHP naraz?

Technicznie tak, ale ryzyko rośnie z każdą wersją. Jeśli sklep stoi na bardzo starym PHP, rozważ najpierw aktualizację samego sklepu i modułów, a PHP podnoś stopniowo, sprawdzając sklep po każdym kroku.

Co zrobić, jeśli po zmianie PHP sklep pokazuje błąd 500?

Wróć do poprzedniej wersji PHP w panelu, żeby sklep znów działał. Potem sprawdź log błędów: zwykle wskaże konkretną wtyczkę albo moduł, który nie obsługuje nowej wersji.

Czy aktualizacja PHP przyspieszy sklep?

Często trochę tak, bo nowsze wersje PHP są szybsze. Nie zastąpi to jednak cache, szybkiego serwera i porządku w modułach, a różnica zależy od sklepu.

Czy hosting sam zmieni wersję PHP?

To zależy od dostawcy. Gdy wersja traci wsparcie, hostingi zwykle zapowiadają zmianę z wyprzedzeniem. Lepiej zrobić to samemu wcześniej, na spokojnie, niż czekać na termin narzucony z zewnątrz.

Czy ten poradnik pomógł?
Radek Cholewiński
Radek Cholewiński

Opiekun klientów w Sorahost. Przy hostingu od ponad 15 lat, wcześniej strony, sklepy i marketing dla firm.

Zadaj pytanie Radkowirc@sorahost.pl

Minuta na przełączenie, godzina na spokój.

Na hostingu Sorahost wybierasz wersję PHP dla każdej strony osobno, a codzienne kopie zapasowe są w cenie. Jeśli Twój sklep działa dziś gdzie indziej, przeniesiemy go za darmo, zwykle w jedną noc.

Zobacz hosting dla sklepówOd 299 zł brutto rocznie · pon-pt 9:00-17:00