N1 Nex1on

Aktualizacja silnika Nex1on i wycofanie zmian: jak aktualizować bez nerwów

Co silnik robi podczas aktualizacji, jak się przygotować, po co jest klucz przywracania i co zrobić, jeśli witryna nie odpowiada po aktualizacji: przywracanie plików i kopii bazy.

Aktualizacja silnika to dwie czynności naraz: pliki są podmieniane, a baza danych porządkowana. Strach jest tylko wtedy, gdy nie ma drogi powrotu. W Nex1on droga powrotu jest zawsze: silnik sam robi kopię bazy i punkt przywracania plików, nic nie instaluje się bez Twojej decyzji, a jeśli witryna nie odpowiada po aktualizacji, poprzednią wersję można przywrócić jednym kliknięciem. Poniżej: jak aktualizować bez nerwów i co zrobić, gdy coś pójdzie nie tak.

Skąd wiesz, że wyszła nowa wersja #

Jeśli sprawdzanie aktualizacji jest włączone, silnik raz w tygodniu pyta nex1on.com, czy wyszła nowa wersja (wysyłane są tylko domena, wersja silnika i wersja PHP). Jeśli tak, dostajesz e-mail „Dostępna jest wersja Nex1on …” (jeden e-mail na wersję), a strona „System → Aktualizacje” pokazuje „Wyszła wersja … Przeczytaj, co się zmieniło, i zdecyduj sam”. Nic nie instaluje się samo: e-mail tylko informuje, że jest coś do przeczytania. Sprawdzanie można wyłączyć: w „Ustawienia → Ogólne” ustaw „Sprawdzaj aktualizacje” na „nigdy”.

Co silnik robi podczas aktualizacji #

Strona aktualizacji przechodzi krok po kroku i widzisz każdy z nich:
  1. Sprawdza wymagania: czy PHP jest wystarczająco nowe, czy jest dość wolnego miejsca i czy pliki silnika można zapisywać.
  2. Pobiera archiwum i sprawdza jego podpis: archiwum niezgodne z podpisanym skrótem nie zostanie zainstalowane.
  3. Robi kopię bazy i punkt przywracania plików (kopia jest robiona także przed zastosowaniem zmian w bazie). Jeśli kopii nie da się utworzyć, aktualizacja się nie rozpocznie.
  4. Podmienia pliki silnika. W trakcie odwiedzający widzą stronę „konserwacja”. Foldery config i storage pozostają nietknięte, ustawienia, przesłane pliki i dane zostają bez zmian, a stare pliki trafiają do kopii.
  5. Stosuje zmiany w bazie (migracje) i sprawdza, czy witryna odpowiada.

Krok 1. Przygotuj się #

Otwórz „System → Aktualizacje”. Zanim naciśniesz „Aktualizuj”, zrób trzy rzeczy.
  1. Przeczytaj, co się zmieniło. Strona „Przed aktualizacją do wersji …” pokazuje opis wersji. Pełna lista zmian jest w pliku CHANGELOG w folderze silnika.
  2. Sprawdź wymagania. Silnik pokazuje, jakie masz PHP i jakie jest potrzebne, ile jest wolnego miejsca i czy pliki silnika można zapisywać. Jeśli coś nie jest spełnione, przycisk „Aktualizuj” jest nieaktywny, a strona mówi, co poprawić.
  3. Sprawdź, czy masz własne zmiany w plikach silnika. Jeśli zmieniałeś pliki silnika, aktualizacja zastąpi je plikami wydania i Twoje zmiany przepadną. Strona mówi, ile jest takich plików, i proponuje „Zapisz moje zmiany w archiwum”. Lepiej trzymać swoje zmiany we własnym motywie lub module: aktualizacja ich nie dotyka.
Zrób też własną kopię bazy („System → Kopie i przenoszenie → Kopie zapasowe bazy danych”): aktualizacja robi swoją, ale nawyk robienia kopii przed każdym ryzykownym krokiem kiedyś się opłaci.

Krok 2. Zaktualizuj #

Naciśnij „Aktualizuj”. Strona przechodzi krok po kroku i najlepiej jej nie przeszkadzać: jeśli zamkniesz kartę, wróć na tę samą stronę, a aktualizacja będzie kontynuowana od tego samego miejsca. Gdy wszystko się uda, silnik mówi „Silnik zaktualizowano do wersji …, baza jest w porządku, witryna odpowiada”, a kopia bazy zostaje na stronie „Aktualizacja”. Jeśli część modułów się nie zaktualizowała, informuje o tym osobno, podając nazwę kopii.

Krok 3. Jeśli coś poszło nie tak #

Silnik sam sprawdza, czy witryna odpowiada po podmianie plików. Jeśli odpowiedź jest niewłaściwa, przywraca poprzednią wersję bez Twojego udziału: „Witryna nie odpowiada poprawnie. Przywracam poprzednią wersję…”, a potem „Poprzednia wersja została przywrócona”. Dostajesz e-mail „Aktualizacja do … została anulowana”. Jeśli automatyczne przywrócenie się nie udało, otwórz stronę przywracania (jej adres jest pokazany na stronie aktualizacji), wpisz klucz i naciśnij „Przywróć poprzednią wersję teraz”. Pliki poprzedniej wersji leżą też jako archiwum w storage/recovery/files.zip. Powód, dla którego aktualizacja się nie powiodła, jest podany wprost:
  • Nowa wersja wymaga nowszego PHP. Zaktualizuj PHP u hostingodawcy albo poczekaj.
  • Archiwum nie zgadza się z podpisanym skrótem. Pobieranie zostało uszkodzone: powtórz je.
  • Archiwum jest większe niż zapowiedziano albo brakuje miejsca. Zwolnij trochę miejsca na dysku.
  • Serwer aktualizacji nie odpowiedział albo pobieranie zostało przerwane. Spróbuj później.
  • Zmiany w bazie nie zostały zastosowane. Szczegóły są w dzienniku błędów; kopia sprzed rozpoczęcia jest zachowana.
  • Na serwerze pojawiła się inna wersja, zanim zdążyłeś kliknąć. Otwórz stronę aktualizacji ponownie.

Aktualizacja ręczna #

Jeśli serwer nie może zapisywać plików silnika albo chcesz zaktualizować samodzielnie, zrób to ręcznie: pobierz archiwum nowej wersji ze strony wydań, rozpakuj je i wgraj na pliki silnika, nie ruszając config i storage. Następnie otwórz sekcję „Aktualizacja” i naciśnij „Zastosuj”: zmiany w bazie nie zastosują się same. Haseł FTP nie trzeba wpisywać w panelu: nie są tu przyjmowane ani przechowywane.

Co sprawdzić #

  • Przeczytałeś opis wersji i listę wymagań.
  • W plikach silnika nie ma Twoich zmian, a jeśli są, zostały zapisane w archiwum.
  • Jest świeża kopia bazy i wiesz, gdzie leży.
  • Klucz witryny jest ustawiony w config/local.php (app.key, co najmniej 32 znaki): bez niego przywracanie jest niedostępne.
  • Klucz przywracania jest zapisany do czasu potwierdzenia aktualizacji.
  • Po aktualizacji otworzyłeś stronę główną, kilka podstron i panel, a „Stan systemu” nie pokazuje niczego na czerwono.

Jeśli coś poszło nie tak #

  • Przycisk „Aktualizuj” jest nieaktywny. Spełnij wymagania wymienione na stronie: wersja PHP, wolne miejsce, prawo zapisu do plików.
  • „Przywracanie jest niedostępne: ustaw klucz witryny”. Wpisz app.key (co najmniej 32 znaki) w config/local.php; bez niego nie można podpisać biletu przywracania.
  • Przywracanie jest niedostępne: nie udało się zapisać do folderów storage/recovery i public albo brakuje rozszerzenia ZIP. Daj serwerowi prawo zapisu do tych folderów i włącz ZIP u hostingodawcy.
  • Aktualizacja przerwała się w połowie. Witryna może być w stanie mieszanym: naciśnij „Przywróć poprzednią wersję teraz” albo użyj klucza przywracania.
  • Nowe funkcje się nie pojawiły. Strona aktualizacji mówi, ile zmian w bazie czeka na zastosowanie: dopóki nie zostaną zastosowane, witryna działa na starych tabelach.

Co dalej #

Aktualizuj na podstawie opisu, nie z przyzwyczajenia: przeczytaj, co się zmieniło, i zdecyduj, czy potrzebujesz tego teraz. I niech droga powrotu będzie sprawdzona, a nie zakładana: w spokojny dzień otwórz stronę przywracania i upewnij się, że klucz witryny jest na miejscu.
Udostępnij: Telegram WhatsApp

Przeczytaj też

Dyskusja

Komentarze

Dyskusja jeszcze się nie zaczęła

Nikt jeszcze nie skomentował. Bądź pierwszy.

Zgłoś ten wpis