Joomla 3.6.0 đến 3.6.1 dẫn đến lỗi mã thông báo bảo mật không hợp lệ


11

Tôi vừa thử cập nhật trang web của tôi từ Joomla 3.6.0 lên 3.6.1 và tôi nhận được thông báo lỗi sau:

Yêu cầu gần đây nhất đã bị từ chối vì nó chứa mã thông báo bảo mật không hợp lệ. Hãy làm mới trang và thử lại.

Làm thế nào tôi có thể cài đặt thành công bản cập nhật?

Câu trả lời:


10

Nếu bạn chưa cài đặt Sao lưu Akeeba:

  • Quay trở lại trang Cập nhật Joomla
  • Tải lên và cài đặt Gói Cập nhật Joomla 3.6.1 bằng tab "Tải lên & Cập nhật"
  • Chuyển đến Tiện ích mở rộng >> Quản lý >> Cơ sở dữ liệu
  • Bạn có thể thấy một thông báo rằng cơ sở dữ liệu đã lỗi thời. Nếu vậy, nhấp vào nút Fix trên thanh công cụ.

Nếu bạn đã cài đặt Sao lưu Akeeba:

  • Chuyển đến Trình quản lý plugin
  • Vô hiệu hóa hệ thống - Sao lưu trên plugin nâng cấp
  • Quay trở lại trang Cập nhật Joomla
  • Tải lên và cài đặt Gói Cập nhật Joomla 3.6.1 bằng tab "Tải lên & Cập nhật"
  • Chuyển đến Tiện ích mở rộng >> Quản lý >> Cơ sở dữ liệu
  • Bạn có thể thấy một thông báo rằng cơ sở dữ liệu đã lỗi thời. Nếu vậy, nhấp vào nút Fix trên thanh công cụ.

Cảm ơn - Tôi đã tắt Sao lưu Akeeba và chạy cập nhật tự động. Đã làm việc.
Gerfried

8

Chi tiết về vấn đề này hiện có thể được tìm thấy trong Tài liệu Joomla :

Nguyên nhân là gì?
3.6.1 đã giới thiệu kiểm tra mã thông báo CSRF cho thành phần cập nhật dưới dạng mức bảo mật bổ sung. 3.6.0 xuống 2.5.4 (mọi phiên bản có thành phần cập nhật) sẽ gặp sự cố với mã thông báo CSRF vì các phiên bản đó không tạo mã cần thiết để vượt qua kiểm tra. Cập nhật trong tương lai sẽ hoạt động chính xác

Giải pháp của Lodder hoạt động hoàn hảo. Sử dụng các dịch vụ cập nhật của bên thứ ba như MyJ Joomla hoặc Watchful.li sẽ không gây ra bất kỳ vấn đề nào


5

Tôi cũng có thông báo lỗi tương tự sau khi nâng cấp 3.6.0 -> 3.6.1: 0 Không thể bắt đầu phiên: đã được PHP khởi động ($ _SESSION được đặt).

Để giải quyết, bạn cần sử dụng PHP Selector và thay đổi từ 5.3 (đó là sự cố PHP 5.3; sẽ được khắc phục trong Joomla 3.6.2). Tôi thay đổi từ 5,3 -> 5,6 và hiện có thể đăng nhập quản trị.

Hy vọng giúp


3

Nếu mọi người không thể đăng nhập vào back-end, có một sửa chữa bổ sung trên github tại đây: https://github.com/j Joomla / j Joomla-cms/pull/11430/files

Bạn phải thay đổi các dòng sau trên thư viện / j Joomla / session / handler / ig.php

private $started;đến private $started=false;private $closed;đểprivate $closed=false;

Thêm dòng $this->closed = true;sau session_write_close();(dòng 153)

Từ các trang web tôi đã vá ngày hôm nay, đây dường như là một vấn đề PHP 5.3.


Sửa đổi các tập tin cốt lõi không phải là một ý tưởng tốt.
Joomler

1
@joomler Đó là một ý tưởng tồi cho bất kỳ thay đổi vĩnh viễn nào, nhưng đây là cách khắc phục tạm thời cho một lỗi có thể được viết quá mức trên các bản vá trong tương lai, giả sử Joomla sẽ sửa các lỗi như vậy trong các bản vá trong tương lai (họ vẫn nói rằng họ hỗ trợ 5.3). Nếu bạn muốn chạy Joomla trên PHP 5.3, thì đó dường như là cách duy nhất để sửa lỗi này. Nâng cấp PHP hợp lý hơn, nhưng không phải lúc nào cũng nhanh chóng / dễ dàng. Trên github, bản sửa lỗi được viết bởi một trong các Nhóm lãnh đạo của Joomla, vì vậy bản vá tiếp theo có thể sẽ bao gồm thay đổi này.
Richard B

1
@Joomler - Cam kết này đã được hợp nhất và thêm vào cột mốc v3.6.1 vì vậy tất cả đều ổn;)
Tạm biệt

vâng, điều đó có vẻ tốt :)
Joomler

2

Có vẻ như tôi đã nhấp vào nút cập nhật đó một cách nhanh chóng ... một lần nữa ...

Nếu tôi đã đọc Tin tức phát hành chính thức Joomla! 3.6.1 Cập nhật kỹ hơn một chút, tôi sẽ học được từ đoạn thứ ba:

Cập nhật từ Joomla! 3.6.0

Cập nhật Joomla! Cập nhật Thành phần thông qua Trình quản lý mở rộng . Sau đó sử dụng Joomla! Cập nhật thành phần để cập nhật lên phiên bản 3.6.x mới nhất.

Vì vậy, tôi đã thử nghiệm tuyên bố này trên trang web thử nghiệm thứ hai và chắc chắn: Sau khi tôi nhấp vào tiện ích mở rộng Có sẵn cập nhật! quickicon trong bảng điều khiển, trong số các bản cập nhật khác có một thứ quan trọng: Joomla! Cập nhật thành phần Cập nhật 3.6.1

Tôi đã cập nhật cái đó trước, rồi quay lại thành phần Joomla Update và nhấp vào nút màu xanh đó 'Cài đặt bản cập nhật', lần này không có bất kỳ vấn đề hay thông báo lỗi nào.

Sau này tôi đã thấy một vài tweet của các thành viên Joomla PLT, đề cập đến Joomla Github Release Joomla 3.6.1 chính thức giúp thêm một chút:

QUAN TRỌNG! Do bản cập nhật bảo mật trong bản phát hành này, trước tiên hãy nâng cấp lên Joomla 3.6.0 sau đó cài đặt phiên bản mới này của Thành phần cập nhật Joomla thông qua Trình quản lý mở rộng trước khi tiếp tục nâng cấp Joomla như bình thường **

Ngoài ra còn có các liên kết tải xuống cho tất cả các gói quan trọng trong câu hỏi, ngay cả bản cập nhật Thành phần Joomla đó là com_j Joomlaupdate-3.6.1.zip , trong trường hợp vì lý do nào đó mà bản cập nhật không xuất hiện trong thành phần Cập nhật mở rộng trên trang web của bạn.

Đạo đức của câu chuyện: RTFM!

EDIT: Những người tốt từ JoomlaShack (ex-Alledia) vừa xuất bản Những điều cần biết về Cập nhật lên Joomla 3.6.2

nhập mô tả hình ảnh ở đây

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.