Joomla 3.6.0 do 3.6.1 powoduje błąd „nieprawidłowego tokena bezpieczeństwa”

11

Właśnie próbowałem zaktualizować moją witrynę z Joomla 3.6.0 do 3.6.1 i pojawia się następujący komunikat o błędzie:

Ostatnie żądanie zostało odrzucone, ponieważ zawierało nieprawidłowy token bezpieczeństwa. Odśwież stronę i spróbuj ponownie.

Jak mogę pomyślnie zainstalować aktualizację?

Lodder
źródło

Odpowiedzi:

10

Jeśli nie masz zainstalowanej aplikacji Akeeba Backup:

  • Wróć do strony aktualizacji Joomla
  • Prześlij i zainstaluj pakiet aktualizacji Joomla 3.6.1 za pomocą karty „Prześlij i zaktualizuj”
  • Przejdź do Rozszerzenia >> Zarządzaj >> Baza danych
  • Może pojawić się komunikat, że baza danych jest nieaktualna. Jeśli tak, kliknij przycisk Napraw na pasku narzędzi.

Jeśli mają Akeeba Backup zainstalowane:

  • Przejdź do Menedżera wtyczek
  • Wyłącz system - kopia zapasowa wtyczki aktualizacji
  • Wróć do strony aktualizacji Joomla
  • Prześlij i zainstaluj pakiet aktualizacji Joomla 3.6.1 za pomocą karty „Prześlij i zaktualizuj”
  • Przejdź do Rozszerzenia >> Zarządzaj >> Baza danych
  • Może pojawić się komunikat, że baza danych jest nieaktualna. Jeśli tak, kliknij przycisk Napraw na pasku narzędzi.
Lodder
źródło
Dzięki - wyłączyłem kopię zapasową Akeeba i uruchomiłem automatyczną aktualizację. Pracował
Gerfried
8

Szczegóły dotyczące tego problemu można teraz znaleźć w Dokumentach Joomla :

Jaka jest przyczyna?
3.6.1 wprowadziło sprawdzanie tokenu CSRF w komponencie aktualizacji jako dodatkowy poziom bezpieczeństwa. 3.6.0 do wersji 2.5.4 (każda wersja z komponentem aktualizacji) trafi na problem z tokenem CSRF, ponieważ te wersje nie generują kodu potrzebnego do przejścia testu. Przyszłe aktualizacje będą działać poprawnie

Rozwiązania Loddera działają idealnie. Korzystanie z usług aktualizacji innych firm, takich jak MyJoomla lub Watchful.li, nie powinno powodować żadnych problemów

johanpw
źródło
5

Miałem również ten sam komunikat o błędzie po aktualizacji 3.6.0 -> 3.6.1: 0 Nie udało się uruchomić sesji: już rozpoczęty przez PHP (ustawiono $ _SESSION).

Aby rozwiązać ten problem, musisz użyć Selektora PHP i zmienić z 5.3 (jest to problem z PHP 5.3; zostanie naprawiony w Joomla 3.6.2). Zmieniam z 5.3 -> 5.6 i mogę teraz zalogować się do administracji.

Nadzieja pomaga

Jeff
źródło
3

Jeśli ludzie nie mogą zalogować się do zaplecza, w github dostępna jest dodatkowa poprawka: https://github.com/joomla/joomla-cms/pull/11430/files

Musisz zmienić następujące wiersze w bibliotekach / joomla / session / handler / native.php

private $started;do private $started=false;i private $closed;doprivate $closed=false;

Dodaj wiersz $this->closed = true;po session_write_close();(wiersz 153)

Ze stron, które poprawiłem dzisiaj, wydaje się, że jest to problem z PHP 5.3.

Richard B.
źródło
modyfikowanie podstawowych plików nie jest dobrym pomysłem.
Joomler,
1
@joomler To zły pomysł na jakiekolwiek trwałe zmiany, ale jest to tymczasowa poprawka błędu, który może zostać nadpisany w przyszłych łatkach bez obaw, zakładając, że Joomla naprawi takie błędy w przyszłych łatkach (nadal mówią, że obsługują 5.3). Jeśli chcesz uruchomić Joomla na PHP 5.3, wydaje się, że jest to jedyny sposób, aby naprawić ten błąd. Aktualizacja PHP jest bardziej sensowna, ale nie zawsze jest to szybkie / łatwe. Na githubie poprawka błędu została napisana przez jeden z członków zespołu kierowniczego Joomla, więc i tak w następnej łatce prawdopodobnie zostanie wprowadzona ta zmiana.
Richard B
1
@Joomler - To zatwierdzenie zostało scalone i dodane do kamienia milowego v3.6.1, więc wszystko w porządku;)
Lodder
tak, to wygląda dobrze :)
Joomler
2

Wygląda na to, że kliknąłem ten przycisk aktualizacji trochę za szybko ... znowu ...

Jeśli przeczytałem oficjalne informacje o wydaniu The Joomla! 3.6.1 Zaktualizuj trochę ostrożniej, dowiedziałbym się z trzeciego akapitu:

Aktualizacja z Joomla! 3.6.0

Zaktualizuj Joomla! Zaktualizuj komponent za pomocą Extension Managera . Następnie użyj Joomla! Zaktualizuj komponent, aby zaktualizować do najnowszej wersji 3.6.x.

Przetestowałem to oświadczenie na drugiej stronie testowej i na pewno: po kliknięciu rozszerzeń dostępne są aktualizacje! Quickicon w panelu sterowania, wśród innych aktualizacji była jedna ważna: Joomla! Aktualizacja komponentu Aktualizacja 3.6.1

Najpierw zaktualizowałem ten, a potem wróciłem do komponentu Joomla Update i kliknąłem niebieski przycisk „Zainstaluj aktualizację”, tym razem bez żadnych problemów i komunikatów o błędach.

Później widziałem kilka tweetów członków Joomla PLT, odnoszących się do oficjalnej wersji Joomla Github Joomla 3.6.1, która pomaga nieco dalej:

WAŻNY! Ze względu na aktualizację zabezpieczeń w tej wersji, najpierw zaktualizuj wersję Joomla 3.6.0, a następnie zainstaluj nową wersję komponentu aktualizacji Joomla poprzez Extension Manager, a następnie kontynuuj normalną aktualizację Joomla **

Istnieją również łącza do pobierania wszystkich ważnych pakietów w pytaniach, nawet do samej aktualizacji komponentu aktualizacji Joomla com_joomlaupdate-3.6.1.zip , na wypadek, gdyby z jakiegoś powodu aktualizacja nie pojawiła się w twoim komponencie aktualizacji rozszerzeń w Twojej witrynie.

Morał tej historii: RTFM!

EDYCJA: Dobrzy ludzie z JoomlaShack (wcześniej Alledia) właśnie opublikowali Co warto wiedzieć o aktualizacji do Joomla 3.6.2

wprowadź opis zdjęcia tutaj

Mikan
źródło