Khắc phục WordPress bị kẹt chế độ bảo trì

3 giờ ago, Hướng dẫn WordPress, Views
Khắc phục WordPress bị kẹt chế độ bảo trì

Khắc Phục WordPress Bị Kẹt Chế Độ Bảo Trì

WordPress là một nền tảng quản lý nội dung (CMS) mạnh mẽ và linh hoạt, nhưng đôi khi bạn có thể gặp phải tình huống website của mình bị “kẹt” trong chế độ bảo trì (Maintenance Mode). Điều này thường xảy ra trong quá trình cập nhật plugin, theme hoặc core WordPress. Khi website bị kẹt trong chế độ bảo trì, khách truy cập sẽ chỉ thấy một thông báo đơn giản cho biết website đang được bảo trì, thay vì nội dung mà họ mong đợi. Bài viết này sẽ hướng dẫn bạn cách khắc phục tình trạng WordPress bị kẹt trong chế độ bảo trì một cách hiệu quả.

Nguyên Nhân WordPress Bị Kẹt Chế Độ Bảo Trì

Trước khi đi sâu vào cách khắc phục, chúng ta cần hiểu rõ nguyên nhân gây ra tình trạng này. Thông thường, WordPress kích hoạt chế độ bảo trì khi thực hiện các cập nhật. Trong quá trình cập nhật, một file có tên `.maintenance` sẽ được tạo trong thư mục gốc của website. Khi quá trình cập nhật hoàn tất, file này sẽ tự động bị xóa, và website sẽ trở lại hoạt động bình thường. Tuy nhiên, đôi khi quá trình cập nhật bị gián đoạn do nhiều nguyên nhân khác nhau, dẫn đến việc file `.maintenance` không bị xóa, khiến website mãi mãi ở chế độ bảo trì. Một số nguyên nhân phổ biến bao gồm:

  • Cập nhật plugin hoặc theme bị lỗi.
  • Kết nối internet không ổn định trong quá trình cập nhật.
  • Xung đột giữa các plugin hoặc theme.
  • Hết thời gian thực thi (execution time) trong quá trình cập nhật.

Các Bước Khắc Phục WordPress Bị Kẹt Chế Độ Bảo Trì

Khi website của bạn bị kẹt trong chế độ bảo trì, đừng lo lắng. Có một số cách đơn giản để khắc phục vấn đề này.

1. Xóa File `.maintenance`

Đây là phương pháp đơn giản và hiệu quả nhất. Bạn cần truy cập vào thư mục gốc của website thông qua FTP (File Transfer Protocol) hoặc trình quản lý file trong cPanel của hosting. Sau đó, tìm kiếm file `.maintenance` và xóa nó.

  1. Đăng nhập vào tài khoản FTP của bạn bằng một phần mềm FTP như FileZilla hoặc Cyberduck.
  2. Hoặc, đăng nhập vào cPanel của hosting và truy cập trình quản lý file.
  3. Tìm đến thư mục gốc của website (thường là `public_html` hoặc tên miền của bạn).
  4. Tìm file `.maintenance`. Nếu không thấy, hãy chắc chắn rằng bạn đã bật chế độ hiển thị các file ẩn (thường có tùy chọn “Show Hidden Files” trong trình quản lý file).
  5. Xóa file `.maintenance`.

Sau khi xóa file này, hãy thử truy cập lại website của bạn. Website sẽ trở lại hoạt động bình thường nếu nguyên nhân là do file `.maintenance` không bị xóa.

2. Kiểm Tra Và Vô Hiệu Hóa Plugin Gây Lỗi

Nếu việc xóa file `.maintenance` không giải quyết được vấn đề, có thể một plugin nào đó đang gây ra lỗi. Bạn có thể vô hiệu hóa tất cả các plugin và kích hoạt lại từng cái một để tìm ra plugin gây lỗi.

  1. Truy cập vào thư mục `wp-content` trong thư mục gốc của website.
  2. Đổi tên thư mục `plugins` thành `plugins_disabled`. Điều này sẽ vô hiệu hóa tất cả các plugin.
  3. Kiểm tra lại website. Nếu website hoạt động bình thường, một trong các plugin là nguyên nhân.
  4. Đổi tên thư mục `plugins_disabled` trở lại `plugins`.
  5. Đăng nhập vào trang quản trị WordPress.
  6. Kích hoạt từng plugin một, kiểm tra website sau mỗi lần kích hoạt để xác định plugin gây lỗi.
  7. Khi tìm thấy plugin gây lỗi, hãy vô hiệu hóa hoặc gỡ cài đặt nó.

3. Kiểm Tra Theme Hiện Tại

Tương tự như plugin, theme cũng có thể gây ra lỗi dẫn đến việc website bị kẹt trong chế độ bảo trì. Bạn có thể chuyển về theme mặc định của WordPress để kiểm tra.

  1. Truy cập vào cơ sở dữ liệu của bạn thông qua phpMyAdmin (thường có trong cPanel).
  2. Tìm bảng `wp_options` (tiền tố `wp_` có thể khác tùy thuộc vào cài đặt của bạn).
  3. Tìm các hàng có tên `template` và `stylesheet`.
  4. Sửa giá trị của cả hai hàng này thành một theme mặc định của WordPress, ví dụ như `twentytwentyone` hoặc `twentytwentytwo`.
  5. Kiểm tra lại website. Nếu website hoạt động bình thường, theme hiện tại là nguyên nhân.

Nếu theme hiện tại là nguyên nhân, bạn có thể thử cập nhật theme lên phiên bản mới nhất hoặc chuyển sang một theme khác.

4. Kiểm Tra Lỗi Trong File `wp-config.php`

File `wp-config.php` chứa các thông tin cấu hình quan trọng của WordPress. Một lỗi nhỏ trong file này có thể gây ra nhiều vấn đề, bao gồm cả việc website bị kẹt trong chế độ bảo trì.

  1. Truy cập vào thư mục gốc của website thông qua FTP hoặc trình quản lý file.
  2. Mở file `wp-config.php` bằng một trình soạn thảo văn bản.
  3. Kiểm tra kỹ xem có lỗi chính tả, ký tự lạ hoặc dòng code bị thiếu hay không.
  4. Đặc biệt chú ý đến các dòng liên quan đến kết nối cơ sở dữ liệu (database).
  5. Nếu bạn không chắc chắn về một đoạn code nào đó, hãy tham khảo tài liệu của WordPress hoặc hỏi ý kiến chuyên gia.
  6. Sau khi sửa lỗi, lưu lại file `wp-config.php` và kiểm tra lại website.

5. Tăng Giới Hạn Bộ Nhớ PHP (PHP Memory Limit)

Đôi khi, việc cập nhật plugin hoặc theme đòi hỏi nhiều bộ nhớ PHP hơn mức cho phép. Điều này có thể dẫn đến việc quá trình cập nhật bị gián đoạn và website bị kẹt trong chế độ bảo trì. Bạn có thể tăng giới hạn bộ nhớ PHP bằng cách chỉnh sửa file `wp-config.php` hoặc `.htaccess`.

Cách 1: Chỉnh sửa file `wp-config.php`

Thêm dòng code sau vào file `wp-config.php`:

“`php
define(‘WP_MEMORY_LIMIT’, ‘256M’);
“`

Cách 2: Chỉnh sửa file `.htaccess`

Thêm dòng code sau vào file `.htaccess`:

“`
php_value memory_limit 256M
“`

Sau khi thực hiện, hãy kiểm tra lại website.

6. Sử Dụng WP-CLI (WordPress Command Line Interface)

Nếu bạn quen thuộc với dòng lệnh, WP-CLI là một công cụ mạnh mẽ để quản lý WordPress. Bạn có thể sử dụng WP-CLI để tắt chế độ bảo trì.

  • Kết nối với server của bạn thông qua SSH.
  • Di chuyển đến thư mục gốc của website WordPress.
  • Chạy lệnh sau: `wp option delete core_updater.lock`

Lệnh này sẽ xóa option `core_updater.lock`, là option chịu trách nhiệm kích hoạt chế độ bảo trì. Sau khi chạy lệnh, hãy kiểm tra lại website.

Phòng Ngừa WordPress Bị Kẹt Chế Độ Bảo Trì Trong Tương Lai

Để tránh gặp phải tình trạng WordPress bị kẹt trong chế độ bảo trì trong tương lai, bạn nên thực hiện một số biện pháp phòng ngừa sau:

  • Luôn sao lưu (backup) website trước khi thực hiện bất kỳ cập nhật nào.
  • Sử dụng môi trường staging để thử nghiệm các cập nhật trước khi áp dụng chúng lên website chính thức.
  • Kiểm tra kỹ các plugin và theme trước khi cài đặt.
  • Đảm bảo kết nối internet ổn định trong quá trình cập nhật.
  • Sử dụng các plugin quản lý cập nhật thông minh để tự động thực hiện các cập nhật theo lịch trình.
  • Đảm bảo hosting của bạn có đủ tài nguyên (bộ nhớ, CPU) để chạy WordPress.

Kết Luận

WordPress bị kẹt trong chế độ bảo trì là một vấn đề khá phổ biến, nhưng nó thường có thể được khắc phục một cách dễ dàng. Bằng cách làm theo các bước hướng dẫn trong bài viết này, bạn có thể nhanh chóng đưa website của mình trở lại hoạt động bình thường. Quan trọng hơn, việc thực hiện các biện pháp phòng ngừa sẽ giúp bạn tránh gặp phải vấn đề này trong tương lai. Chúc bạn thành công!