Lỗi cURL error 28 trong WordPress là một vấn đề thường gặp, liên quan đến việc trang web không thể kết nối với máy chủ trong thời gian quy định. Điều này có thể làm ảnh hưởng đến nhiều tính năng như cập nhật plugin, theme, hoặc kết nối API.
Trong bài viết này, chúng tôi sẽ chỉ cho bạn cách dễ dàng khắc phục sự cố ‘lỗi cURL 28: Hết thời gian kết nối’ trên trang web WordPress của bạn.
“Lỗi cURL error 28 kết nối hết thời gian chờ” là gì?
Lỗi cURL 28 là một lỗi phổ biến mà người dùng WordPress có thể gặp phải. cURL, viết tắt của Client URL, là một thư viện cho phép bạn kết nối và giao tiếp với các loại máy chủ khác nhau với các loại giao thức khác nhau.
Lỗi thường chỉ ra rằng trang web của bạn đang cố gắng thực hiện yêu cầu bằng thư viện cURL nhưng yêu cầu mất nhiều thời gian hơn giới hạn thời gian được chỉ định, dẫn đến hết thời gian chờ kết nối.
Nguyên nhân gây ra lỗi cURL 28 trong WordPress là gì?
Không phản hồi kịp thời các yêu cầu dữ liệu của máy chủ sẽ gây ra lỗi cURL 28 trong WordPress.
WordPress sử dụng REST API (một kỹ thuật lập trình) để gửi và nhận yêu cầu dữ liệu. Nếu những yêu cầu này hết thời gian chờ, bạn sẽ thấy một sự cố nghiêm trọng trong báo cáo Site Health với tiêu đề ‘REST API gặp lỗi’.
mở rộng lỗi sẽ cho bạn biết thêm thông tin chi tiết, bao gồm cả thông báo lỗi:
Bạn cũng có thể thấy một vấn đề liên quan khác có tiêu đề ‘Trang web của bạn không thể hoàn tất yêu cầu vòng lặp’. Nó sẽ có thông báo lỗi tương tự với mô tả sau.
Lý do “lỗi cURL error 28 hết thời gian chờ”?
Có một số lý do tại sao bạn có thể gặp phải Lỗi cURL 28. Một số nguyên nhân phổ biến nhất bao gồm:
- Các hạn chế về tường lửa hoặc plugin bảo mật: Những hạn chế này có thể chặn hoặc giới hạn kết nối, khiến nó hết thời gian chờ.
- Xung đột plugin: Một số plugin WordPress có thể can thiệp vào thư viện cURL, gây ra lỗi.
- Phần mềm máy chủ lỗi thời: Các phiên bản cURL hoặc OpenSSL lỗi thời cũng có thể gây ra sự cố này.
- Cấu hình SSL không chính xác: Nếu chứng chỉ SSL của bạn không được định cấu hình chính xác, nó có thể gây ra lỗi cURL.
- Giới hạn bộ nhớ PHP không đủ: Giới hạn thời gian chờ của máy chủ của bạn có thể không đủ để hoàn tất quá trình truyền dữ liệu.
Các cách khắc phục sửa lỗi cURL error 28
Tạm thời vô hiệu hóa tường lửa trong Plugin bảo mật
Nếu bạn đã cài đặt plugin bảo mật trên trang web WordPress của mình, nó có thể gây ra Lỗi cURL 28, hãy tạm thời vô hiệu hóa chúng.
Sau đó, bạn có thể truy cập trang báo cáo Tình trạng trang web WordPress để xem sự cố của bạn đã được giải quyết hay chưa.
Nếu có, bạn chỉ cần kiểm tra nhật ký tường lửa WordPress để xem yêu cầu API nào đã bị chặn.
Thao tác này sẽ xác định được nguồn gốc của sự cố hoặc bạn có thể điều chỉnh cài đặt tường lửa để không chặn các yêu cầu API hợp lệ.
Kiểm tra các plugin WordPress khác
Xung đột plugin là nguyên nhân phổ biến của Lỗi cURL 28
Cách để xác định xem plugin WordPress của bạn có gây ra sự cố hay không là vô hiệu hóa chúng. Chỉ cần vào trang Plugins » Installed Plugins và chọn tất cả các plugin.
Sau đó, nhấp vào menu thả xuống Hành động hàng loạt để chọn ‘Hủy kích hoạt’ rồi nhấp vào nút ‘Áp dụng‘.
Bây giờ bạn có thể truy cập báo cáo Site Health để xem sự cố đã biến mất chưa. Nếu điều này khắc phục được sự cố, thì bạn có thể bắt đầu kích hoạt plugin của mình và kiểm tra xem một trong số chúng có khiến thông báo lỗi xuất hiện trở lại không.
Điều này sẽ giúp bạn tìm ra plugin có thể gây ra sự cố và sau đó bạn có thể yêu cầu tác giả plugin hỗ trợ.
Phần mềm máy chủ lỗi thời
Bước tiếp theo là đảm bảo máy chủ lưu trữ web của bạn đang sử dụng phiên bản PHP, thư viện cURL và OpenSSL mới nhất.
Bạn có thể kiểm tra điều đó bằng cách xem tab thông tin hệ thống trên trang Công cụ » Tình trạng trang web .
Chỉ cần chuyển sang tab ‘Thông tin’ và mở rộng phần ‘Máy chủ’.
Từ đây, bạn có thể biết thông tin về phần mềm được cài đặt trên máy chủ lưu trữ WordPress của mình.
Lý tưởng nhất là máy chủ của bạn nên sử dụng PHP 7.4.13 trở lên, cURL phiên bản 7.74.0 trở lên và OpenSSL 1.1.1 trở lên.
>> Tham khảo: phiên bản tiện ích mở rộng được WordPress khuyến nghị
Nếu không, bạn sẽ cần liên hệ với công ty lưu trữ WordPress và yêu cầu họ cập nhật WordPress lên phiên bản phần mềm mới nhất cho tài khoản lưu trữ của bạn.
Cấu hình SSL không chính xác
Nếu trang WordPress của bạn sử dụng HTTPS/SSL nhưng không được cấu hình đúng cách, máy chủ web của bạn cũng có thể chặn các yêu cầu cURL không an toàn.
Bạn có thể xác minh xem chứng chỉ SSL của mình đã được cài đặt đúng chưa bằng cách chạy kiểm tra SSL với bài kiểm tra Qualys SSL Labs. Chỉ cần nhập tên domain vào hộp và nhấp vào Gửi . Sau đó, bạn sẽ nhận được báo cáo nêu bật mọi sự cố:
Kết quả Rating A như báo cáo trên không cho thấy có vấn đề gì nek
Tương tự như vậy, nếu trang WordPress của bạn không sử dụng HTTPS/SS nhưng lại thực hiện lệnh gọi API bằng URL HTTPS thì những yêu cầu đó cũng sẽ không thành công và bạn có thể thấy lỗi cURL sau:
Để khắc phục sự cố này, bạn có thể yêu cầu nhà cung cấp dịch vụ lưu trữ cài đặt lại chứng chỉ SSL cho trang web của mình. Nếu sự cố vẫn tiếp diễn, hãy làm theo hướng dẫn của chúng tôi về cách khắc phục các sự cố SSL phổ biến để thiết lập SSL đúng cách trên trang web WordPress của bạn.
Tăng giới hạn PHP (PHP memory limit)
Như đã đề cập trước đó, các plugin WordPress sử dụng các yêu cầu cURL cho nhiều tác vụ khác nhau. Các tác vụ này có thể tốn nhiều bộ nhớ, đặc biệt là khi xử lý các tập dữ liệu lớn hoặc các hoạt động phức tạp. Nếu giới hạn bộ nhớ PHP (PHP memory limit) quá thấp hoặc giới hạn thời gian quá ngắn (PHP time limit), các yêu cầu cURL có thể không thành công, dẫn đến thời gian chờ xử lý REST API.
Trong trường hợp này, việc tăng giới hạn máy chủ có thể khắc phục lỗi cURL 28.
Trước tiên, hãy kiểm tra giới hạn máy chủ hiện tại của bạn thông qua tab Máy chủ trên trang Site Health . Trong khi WordPress thường đặt giới hạn bộ nhớ và thời gian thực hiện tối đa là 32 MB đến 30 giây, máy chủ web của bạn có thể phân bổ các giá trị tối đa cao hơn giá trị mặc định.
Bạn tăng chúng bằng cách sửa đổi tệp .htaccess hoặc wp-config.php, thiết lập bằng Cấu hình PHP của dịch vụ lưu trữ của bạn.
Nếu bạn không biết cách thực hiện hãy liên hệ với nhà cung cấp dịch vụ lưu trữ của bạn để được hỗ trợ
Chúc các bạn thành công !!!