Cách khắc phục cảnh báo thiếu Module 'imagick' trong WordPress

intermediate📝 WordPress2026-07-27| WordPress 5.2+, PHP 7.4/8.x, Linux (Ubuntu, Debian, CentOS), Windows (XAMPP, WAMP), Shared Hosting (cPanel, Plesk).

Error Message

The optional module, imagick, is not installed, or has been disabled.
#wordpress#php-extension#imagick#site-health#server-optimization

Tại sao bạn thấy cảnh báo này?

Khi kiểm tra công cụ Site Health (Tools > Site Health), bạn có thể thấy một cảnh báo hiệu suất về việc thiếu module "imagick". Nghe có vẻ như một lỗi nghiêm trọng, nhưng thực tế đây là một khuyến nghị để xử lý hình ảnh tốt hơn.

The optional module, imagick, is not installed, or has been disabled.

Tìm hiểu vai trò của ImageMagick

WordPress dựa vào hai công cụ để thay đổi kích thước và cắt ảnh tải lên: Thư viện GDImageMagick (imagick). Trong khi GD có sẵn trên hầu hết các máy chủ, WordPress ưu tiên ImageMagick hơn. Nó hiệu quả hơn đáng kể về bộ nhớ máy chủ và hỗ trợ hơn 200 định dạng ảnh, bao gồm các loại hiện đại như WebP, SVG và HEIC.

Nếu không có nó, máy chủ của bạn sẽ sử dụng thư viện GD cũ hơn. Điều này thường dẫn đến hình ảnh thu nhỏ (thumbnails) mờ hơn một chút và tiêu tốn nhiều RAM hơn khi bạn tải lên ảnh 4K lớn hoặc đồ họa độ phân giải cao.

Cách khắc phục lỗi Imagick

Cách xử lý hoàn toàn phụ thuộc vào nơi website của bạn được lưu trữ. Hãy chọn phương pháp phù hợp với môi trường của bạn bên dưới.

1. Ubuntu hoặc Debian (Apache/Nginx)

Nếu bạn chạy VPS, bạn có thể khắc phục lỗi này trong vài giây qua SSH. Hầu hết các trang web hiện đại sử dụng PHP 8.1 hoặc 8.2. Hãy thay thế 8.x trong các lệnh bên dưới bằng phiên bản bạn đang sử dụng.

# Cập nhật danh sách gói phần mềm
sudo apt update

# Cài đặt module cho phiên bản PHP cụ thể của bạn
sudo apt install php8.2-imagick

# Khởi động lại web server
# Dành cho người dùng Apache:
sudo systemctl restart apache2

# Dành cho người dùng Nginx (khởi động lại bộ xử lý PHP):
sudo systemctl restart php8.2-fpm

2. CentOS, RHEL hoặc Fedora

Trên các hệ thống dựa trên Red Hat, bạn thường sử dụng trình quản lý dnf hoặc yum. Nếu bạn sử dụng kho lưu trữ Remi cho PHP, lệnh thực hiện khá đơn giản.

# Cài đặt extension imagick
sudo dnf install php-pecl-imagick

# Khởi động lại web server để tải cấu hình mới
sudo systemctl restart httpd
# Nếu bạn dùng PHP-FPM, hãy khởi động lại nó:
sudo systemctl restart php-fpm

3. Shared Hosting (cPanel)

Bạn không cần kỹ năng dòng lệnh nếu sử dụng các nhà cung cấp như Bluehost hoặc SiteGround. Hầu hết các nhà cung cấp đều cung cấp nút gạt trong bảng điều khiển.

  • Đăng nhập vào cPanel.
  • Tìm phần Software và nhấp vào Select PHP Version.
  • Chuyển sang tab Extensions.
  • Cuộn xuống để tìm imagick. Tích vào ô để kích hoạt nó.
  • Đợi một lát để thông báo "Success" xuất hiện.

4. Windows (XAMPP hoặc WAMP)

Cài đặt trên Windows yêu cầu thực hiện thủ công nhiều hơn. Bạn phải chọn đúng phiên bản "Thread Safety" (TS) của bản cài đặt PHP.

  • Chạy phpinfo() để xem PHP của bạn là Thread Safe hay Non-Thread Safe và là bản x64 hay x86.
  • Tải xuống file DLL tương ứng từ kho lưu trữ PECL.
  • Di chuyển php_imagick.dll vào thư mục php/ext của bạn.
  • Sao chép tất cả các file DLL khác từ bản tải về (thường bắt đầu bằng CORE_RL) vào thư mục php chính.
  • Thêm extension=imagick vào file php.ini của bạn.
  • Khởi động lại Apache bằng XAMPP Control Panel.

Xác minh: Nó đã thực sự hoạt động chưa?

Đừng chỉ tin vào thông báo của máy chủ. Hãy xác minh việc sửa lỗi bằng một trong hai phương pháp sau.

Cách A: Kiểm tra Site Health của WordPress

Tải lại trang Tools > Site Health > Status. Cảnh báo sẽ biến mất. Để biết thêm chi tiết, nhấp vào tab Info và mở rộng phần Media Handling. Bạn sẽ thấy "ImageMagick" được liệt kê là trình chỉnh sửa (editor) đang hoạt động.

Cách B: Kiểm tra bằng dòng lệnh

Nhập lệnh này vào terminal để xem module có đang hoạt động hay không:

php -m | grep imagick

Nếu terminal hiển thị imagick, bạn đã thành công.

Mẹo bảo trì cuối cùng

  • Cập nhật lớn: Khi bạn nâng cấp từ PHP 8.1 lên 8.3, extension sẽ không tự động chuyển theo. Bạn phải cài đặt php8.3-imagick riêng biệt.
  • Giới hạn tài nguyên: ImageMagick có thể tiêu tốn nhiều tài nguyên. Nếu bạn nhận thấy máy chủ chậm lại khi tải ảnh lên, bạn có thể cần giới hạn mức sử dụng tài nguyên của nó trong file policy.xml.
  • Phương án dự phòng: Nếu nhà cung cấp hosting của bạn từ chối kích hoạt Imagick, đừng lo lắng. WordPress sẽ tiếp tục sử dụng GD. Trang web của bạn vẫn hoạt động bình thường, mặc dù việc tối ưu hóa hình ảnh sẽ không được sắc nét bằng.

Related Error Notes