Chỉnh lỗi autho và lỗi update trong wordpress

Vài ngày gần đây, nhiều bạn liên hệ hỏi tôi về tình trạng website WordPress sử dụng Block Editor [Gutenberg] không thể cập nhật bài viết cũ hay đăng tải bài viết mới. Nội dung thông báo lỗi mà các bạn nhận được là “Updating failed. The response is not a valid JSON response” hoặc “Publishing failed. The response is not a valid JSON response”. Vậy nguyên nhân của tình trạng này là gì? Cách xử lý nó ra sao? Hãy dành ít phút để cùng WP Căn bản tìm hiểu ngay sau đây.

Tham khảo thêm:

  • Khắc phục lỗi 403 Forbidden trong WordPress
  • Khắc phục lỗi 503 Service Unavailable trong WordPress

Có nhiều nguyên nhân khác nhau có thể gây ra lỗi “Updating failed. The response is not a valid JSON response” [Cập nhật không thành công. Phản hồi không phải là một JSON hợp lệ] hoặc “Publishing failed. The response is not a valid JSON response” [Xuất bản không thành công. Phản hồi không phải là một JSON hợp lệ], bao gồm:

  1. Tường lửa [WAF] hoặc ModSecurity chặn API của WordPress
  2. Lỗi file .htaccess
  3. Lỗi cấu trúc đường dẫn tĩnh [permalinks]
  4. Xung đột với theme hoặc plugin
  5. Lỗi SSL [mixed content]

Các khắc phục lỗi Block Editor

Từ những nguyên nhân kể trên, chúng ta có thể đề ra một số giải pháp khắc phục như sau:

Tắt tường lửa [WAF] hoặc ModSecurity

Một số WAF và ModSecurity có thể chặn API của WordPress, gây ra lỗi 403 và từ đó dẫn tới việc Block Editor không thể cập nhật hay đăng tải bài viết.

1. Để xác định xem website của bạn có thuộc trường hợp này hay không, hãy click chuột phải vào trình duyệt web [chẳng hạn như Google Chrome] rồi chọn Inspect [hoặc bấm phím F12] để mở Chrome Dev Tools lên => chọn tab Console => click nút Publish/ Update trên trình soạn thảo => chờ thông báo lỗi xuất hiện.

Nếu bạn nhìn thấy 403 [Forbidden] thì nhiều khả năng là WAF hoặc ModSecurity đã chặn API của WordPress.

2. Hãy thử truy cập cPanel và đi. Sau đó, quay trở lại trình soạn thảo WordPress và kiểm tra xem lỗi đã được khắc phục hay chưa?

  • Nếu lỗi đã được khắc phục, hãy bật lại ModSecurity. Sau đó liên hệ với nhà cung cấp hosting của bạn để yêu cầu họ hỗ trợ tắt rule chặn API. Họ sẽ yêu cầu bạn cung cấp địa chỉ IP truy cập để xác định rule gây lỗi và thêm nó vào whitelist. Việc tắt hoàn toàn ModSecurity có thể tạo ra nguy cơ về bảo mật nên chúng tôi không khuyến khích.
  • Nếu lỗi chưa được khắc phục, hãy thử tắt CDN của CloudFlare, Sucuri… hoặc bất cứ loại WAF nào khác mà bạn đang sử dụng rồi kiểm tra lại.

Dịch vụ WordPress Hosting của WP Căn bản đã khắc phục hoàn toàn lỗi ModSecurity chặn API.

Kiểm tra và khôi phục file .htaccess

Truy cập vào thư mục cài đặt website WordPress của bạn thông qua File Manager của cPanel/ DirectAdmin hoặc phần mềm FTP => mở file .htaccess ra và kiểm tra xem có code nào lạ hay không. Nếu có, hãy xóa nó đi. Nếu không chắc chắn về nội dung của file .htaccess, hãy thử xóa toàn bộ và thay thế bằng code mặc định của WordPress:

BEGIN WordPress

RewriteEngine On RewriteRule .* - [E=HTTP_AUTHORIZATION:%{Authorization}] RewriteBase / RewriteRule ^index.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L]

END WordPress

Lưu lại, xóa cache trình duyệt web và kiểm tra kết quả.

Nếu trước đó bạn có tạo file .htaccess ở các vị trí khác trên website, hãy tìm và đổi tên chúng thành .htaccess_old hoặc xóa bỏ.

Thiết lập lại permalinks

Truy cập Settings => Permalinks => Click vào nút Save Changes để WordPress xác nhận lại cấu trúc đường dẫn tĩnh. Sau đó, quay trở về trình soạn thảo và kiểm tra kết quả.

Cài đặt HTTPS và khắc phục lỗi SSL

Lỗi mixed content [website sử dụng giao thức HTTPS nhưng một số tài nguyên vẫn đang sử dụng giao thức HTTP] cũng có thể là nguyên nhân gây lỗi Block Editor.

Tham khảo một trong các bài viết dưới đây để cài đặt HTTPS và khắc phục toàn bộ lỗi SSL cho website của bạn trước khi kiểm tra lại:

  • Chuyển từ HTTP sang HTTPS không bị mất thứ hạng tìm kiếm
  • Cài HTTPS cho WordPress nhanh chóng với Really Simple SSL
  • Sửa lỗi SSL trong WordPress một cách đơn giản

Vô hiệu hóa plugin hoặc thay theme

Trước tiên, hãy thử cập nhật WordPress, theme và toàn bộ plugin mà bạn đang sử dụng lên phiên bản mới nhất. Nếu lỗi vẫn không được khắc phục, hãy thử:

  • Kích hoạt một theme mặc định của WordPress [chẳng hạn như Twenty Twenty, Twenty Twenty-One…] và kiểm tra xem có hết lỗi hay không? Nếu hết lỗi thì có nghĩa là theme của bạn không tương thích với Block Editor => liên hệ với tác giả của theme để nhờ trợ giúp hoặc thay theme khác.
  • Vô hiệu hóa toàn bộ plugin và và kiểm tra xem có hết lỗi hay không? Nếu hết lỗi thì có nghĩa là một trong các plugin bạn đã cài không tương thích với Block Editor. Hãy kích hoạt lần lượt từng plugin đồng thời kiểm tra cho đến khi thấy lỗi xuất hiện lại => xác định được plugin xung đột => liên hệ với tác giả của plugin để nhờ trợ giúp, xóa bỏ hoặc tìm plugin khác có cùng chức năng để thay thế.

Theme Paradise do WP Căn bản phát triển hoàn toàn tương thích với Block Editor.

Sử dụng Classic Editor

Cuối cùng, nếu đã thử mọi phương pháp mà vẫn không thể khắc phục được lỗi Block Editor, các bạn nên xem xét chuyển qua sử dụng Classic Editor. Tham khảo bài viết “Cài đặt trình soạn thảo cổ điển [Classic Editor] cho WordPress” để biết thêm chi tiết.

Bạn đã từng gặp lỗi với Block Editor hay chưa? Bạn đã sử dụng cách nào để khắc phục nó? Hãy chia sẻ với chúng tôi kinh nghiệm của bạn thông qua khung bình luận bên dưới.

Nếu bạn thích bài viết này, hãy theo dõi blog của tôi để thường xuyên cập nhật những bài viết hay nhất, mới nhất nhé. Cảm ơn rất nhiều. :]

Chủ Đề