Những điểm cần nắm
-
Lỗi này phản ánh việc hệ thống chưa đồng bộ giữa mã nguồn và môi trường server
-
Bản chất là lỗi xác minh chứng chỉ SSL khi kết nối HTTPS
-
Thường xuất hiện với 2 dạng: “certificate has expired” và “unable to get local issuer certificate”
-
Hay gặp khi update WordPress, plugin hoặc gọi API bên ngoài
-
Nguyên nhân chính liên quan đến CA Bundle, cấu hình PHP hoặc phiên bản cURL
-
Có nhiều cách xử lý: cập nhật chứng chỉ, cấu hình lại php.ini hoặc xử lý ở cấp server
Lỗi cURL error 60 trong WordPress là gì
Đây là lỗi xảy ra khi WordPress không xác thực được chứng chỉ SSL từ máy chủ bên ngoài. Khi đó, hệ thống sẽ chặn kết nối HTTPS nhằm đảm bảo an toàn.
Hai thông báo phổ biến:
-
unable to get local issuer certificate
Khi gặp lỗi này, các chức năng như cập nhật plugin, theme hoặc gọi API sẽ bị gián đoạn.

Các thông báo lỗi phổ biến
certificate has expired
Thông báo này xuất hiện khi chứng chỉ từ phía server đích đã hết hạn. Trường hợp phổ biến là do thay đổi chuỗi chứng chỉ của Let’s Encrypt (từ 01/10/2021) khiến nhiều hệ thống cũ không còn tương thích.
unable to get local issuer certificate
Lỗi này xảy ra khi server WordPress không có hoặc không tìm thấy file CA Bundle hợp lệ để xác thực SSL.

Khi nào thường gặp lỗi này
Trong quá trình vận hành WordPress, bạn sẽ dễ gặp lỗi trong các trường hợp:
-
Khi kiểm tra và cập nhật WordPress core, plugin hoặc theme
-
Khi kết nối tới API bên ngoài như TinyPNG, PayPal, Mailchimp
-
Khi crawl sitemap (ví dụ dùng LiteSpeed Cache có thể báo lỗi sitemap không hợp lệ)
Nguyên nhân gây ra lỗi
CA Bundle lỗi thời hoặc sai
WordPress sử dụng danh sách chứng chỉ gốc (CA) để xác thực SSL. Nếu file này cũ hoặc bị lỗi, hệ thống sẽ không xác minh được chứng chỉ.
Server đích dùng chứng chỉ tự ký
Một số API sử dụng SSL self-signed nên không được hệ thống mặc định tin cậy.
Sai quyền hoặc sai đường dẫn
Server không có quyền truy cập file chứng chỉ hoặc cấu hình đường dẫn sai khiến việc xác thực thất bại.
Phiên bản cURL quá cũ
Nếu cURL trên server đã lỗi thời, nó có thể không hỗ trợ các chuẩn SSL mới.
Cách khắc phục lỗi cURL error 60
Cập nhật CA Bundle thủ công
Nếu không thể nâng cấp toàn hệ thống, bạn có thể cập nhật thủ công:
Bước 1: Tải file mới tại
https://curl.se/ca/cacert.pem
Bước 2: Truy cập File Manager hoặc FTP
Bước 3: Vào thư mục:
wp-includes/certificates/
Bước 4:
Backup file ca-bundle.crt cũ
Đổi tên file cacert.pem thành ca-bundle.crt
Upload và ghi đè
Sau đó kiểm tra lại bằng cách update plugin.
Cấu hình lại php.ini hoặc .user.ini
Nếu server trỏ sai đường dẫn chứng chỉ:
-
Bước 1: Lưu file cacert.pem vào server
curl.cainfo = "/duong-dan/cacert.pem"
openssl.cafile = "/duong-dan/cacert.pem"
-
Bước 4: Restart webserver và PHP
Cập nhật chứng chỉ ở cấp server
Nếu bạn có quyền root (Ubuntu/Debian):
sudo apt-get update
sudo apt-get install --reinstall ca-certificates
Sau đó restart dịch vụ:
sudo systemctl restart nginx
sudo systemctl restart apache2
Cách này giúp hệ điều hành cập nhật toàn bộ chứng chỉ gốc mới nhất.
Tắt kiểm tra SSL (tạm thời)
Chỉ nên dùng khi cần xử lý gấp.
Mở file:
/wp-content/themes/YOUR_THEME/functions.php
Thêm:
add_filter('https_ssl_verify', '__return_false');
Hoặc áp dụng cho toàn bộ request:
add_filter('http_request_args', function($args) {
$args['sslverify'] = false;
return $args;
});
Lưu ý: cách này làm giảm bảo mật nên không nên dùng lâu dài.
Tổng kết
Lỗi cURL error 60 chủ yếu xuất phát từ việc hệ thống không xác thực được chứng chỉ SSL. Để xử lý triệt để, bạn nên ưu tiên:
-
Cập nhật chứng chỉ ở cấp server
Việc duy trì hệ thống luôn cập nhật sẽ giúp hạn chế lỗi này và đảm bảo các kết nối HTTPS hoạt động ổn định, an toàn.