Khi website WordPress của bạn gặp sự cố không thể gửi email, đặc biệt là các email quan trọng như thông báo đặt hàng, đăng ký tài khoản hay reset mật khẩu, một trong những giải pháp phổ biến nhất là tích hợp Mailgun thông qua API. Tuy nhiên, quá trình cấu hình và vận hành không phải lúc nào cũng suôn sẻ. Rất nhiều quản trị viên đau đầu vì lỗi WordPress Mailgun API, dẫn đến việc email bị từ chối, thất lạc hoặc không thể gửi đi. Bài viết này sẽ đi sâu vào phân tích tất cả các lỗi thường gặp, nguyên nhân cốt lõi và hướng dẫn bạn từng bước khắc phục triệt để, giúp hệ thống email hoạt động ổn định trở lại.
Hiểu Về Mailgun API Và Vai Trò Trong WordPress

Mailgun là một dịch vụ email API mạnh mẽ, cho phép các ứng dụng gửi, nhận và theo dõi email một cách đáng tin cậy. Khi tích hợp với WordPress thông qua plugin như WP Mail SMTP hoặc Mailgun for WordPress, hệ thống thay thế hàm wp_mail() mặc định bằng API của Mailgun. Điều này giúp cải thiện tỷ lệ gửi thành công, tránh spam và cung cấp các tính năng kiểm tra log chi tiết.
Về bản chất, Mailgun hoạt động như một trung gian. WordPress gửi yêu cầu chứa nội dung email đến máy chủ Mailgun, sau đó Mailgun chịu trách nhiệm chuyển phát đến hộp thư người nhận. Nếu bất kỳ bước nào trong quy trình này bị gián đoạn — từ khâu xác thực API, cấu hình DNS, đến firewall chặn kết nối — thì lỗi ngay lập tức xuất hiện.
Danh Sách Các Lỗi WordPress Mailgun API Phổ Biến

Dựa trên kinh nghiệm xử lý hàng trăm case thực tế, các lỗi thường được phân thành nhóm chính sau:
Lỗi Xác Thực API Key
- Mã lỗi 401 Unauthorized: Hệ thống từ chối do API key không đúng hoặc đã bị thu hồi.
- Lỗi “Invalid API key”: Thông báo từ Mailgun khi key không khớp với domain hoặc vùng (region) đã đăng ký.
- Email bị gửi vào spam: Thiếu bản ghi SPF hoặc DKIM không hợp lệ.
- Lỗi “Domain not verified”: Tên miền chưa được Mailgun xác nhận quyền sở hữu qua DNS.
- Thời gian chờ (Timeout): Bản ghi MX không trỏ đúng về Mailgun.
- cURL error 28: Connection timed out: Máy chủ WordPress không thể kết nối tới api.mailgun.net hoặc api.eu.mailgun.net.
- cURL error 7: Failed to connect: Chặn bởi firewall, đặc biệt trên hosting chia sẻ hoặc VPS có tường lửa nghiêm ngặt.
- SSL certificate problem: Chứng chỉ SSL trên máy chủ lạc hậu hoặc không đồng bộ.
- Mã lỗi 429 Too Many Requests: Vượt quá giới hạn gửi mỗi giây hoặc mỗi ngày theo gói dịch vụ.
- Lỗi “Account suspended”: Tài khoản bị khóa do vi phạm chính sách spam hoặc chưa thanh toán.
- Lỗi “Mailgun API is not responding”: Plugin lỗi thời, không tương thích với phiên bản PHP hoặc WordPress mới.
- Memory exhausted: Plugin sử dụng quá nhiều bộ nhớ, đặc biệt khi gửi email hàng loạt.
- Hosting sử dụng PHP cURL phiên bản cũ không hỗ trợ TLS 1.2 (Mailgun yêu cầu tối thiểu TLS 1.2).
- Firewall của hosting (ModSecurity, CSF) chặn kết nối đến IP của Mailgun.
- DNS resolver trên server chậm hoặc cấu hình sai, không phân giải được tên miền Mailgun.
- Đăng nhập tài khoản Mailgun, vào mục Settings → API Keys.
- Copy Private API Key (không lấy Public Key).
Lỗi Cấu Hình DNS (SPF, DKIM, MX)
Lỗi Kết Nối Mạng Và Firewall
Lỗi Giới Hạn Tài Khoản (Rate Limiting)
Lỗi Plugin Xung Đột
Phân Tích Chi Tiết Nguyên Nhân Cốt Lõi

Không phải lỗi nào cũng xuất phát từ cùng một nguồn. Việc hiểu rõ bản chất giúp bạn tiết kiệm thời gian debug.
1. Nguyên Nhân Từ Phía Mailgun
Mailgun có hai vùng (region) chính: US (api.mailgun.net) và EU (api.eu.mailgun.net). Sai vùng khi cấu hình là nguyên nhân phổ biến khiến lỗi xác thực xảy ra. Ngoài ra, mỗi tài khoản Mailgun có một Private API Key duy nhất, liên kết với một tên miền cụ thể. Nếu bạn vô tình copy key của domain khác hoặc key chứa ký tự khoảng trắng, API sẽ trả về lỗi 401.
Mailgun cũng áp dụng chính sách kiểm tra domain nghiêm ngặt. Tên miền của bạn cần được xác thực thông qua việc thêm bản ghi TXT do Mailgun cung cấp vào DNS. Quá trình này có thể mất từ vài phút đến 48 giờ. Nếu chưa hoàn tất, mọi yêu cầu gửi email đều thất bại với thông báo “Domain is not verified”.
2. Nguyên Nhân Từ Hosting / Server
Máy chủ WordPress đóng vai trò quyết định. Các lỗi cURL timeout thường xảy ra do:
3. Nguyên Nhân Từ Plugin
Plugin gửi email là cầu nối giữa WordPress và Mailgun. Nhiều plugin cũ không cập nhật theo phiên bản mới của Mailgun API (v3). Ví dụ, Mailgun API v2 đã bị deprecated, nhưng một số plugin vẫn gọi endpoint cũ, gây ra lỗi “400 Bad Request”. Ngoài ra, việc xung đột với plugin bảo mật như Wordfence hoặc Sucuri có thể chặn các request API.
Hướng Dẫn Khắc Phục Từng Bước

Bước 1: Kiểm Tra API Key
Nguyên nhân thường là do API key sai, domain chưa được xác thực, hoặc request không đến được endpoint do firewall. Hãy kiểm tra từng yếu tố theo thứ tự ưu tiên: key → domain → kết nối mạng.
Lỗi “cURL error 28: Operation timed out” xuất hiện khi gửi email, tôi phải làm sao?
Lỗi này cho thấy server không thể kết nối đến Mailgun. Kiểm tra outbound firewall, DNS resolver, và thử thay đổi region endpoint. Nếu dùng hosting chia sẻ, yêu cầu hỗ trợ kỹ thuật mở port 443 ra ngoài.
Có cách nào test Mailgun API mà không cần gửi email thật không?
Có.
Lỗi 400 thường do cấu hình sai tham số gửi. Kiểm tra lại tên miền, API key và region. Đôi khi do plugin gọi sai endpoint v3, hãy cập nhật plugin lên phiên bản mới nhất.
Lỗi “This domain is not verified” kéo dài dù đã thêm bản ghi DNS, tại sao?
DNS propagation chưa hoàn tất, hoặc bạn đã thêm bản ghi sai giá trị. Sử dụng công cụ kiểm tra DNS của Mailgun hoặc dùng lệnh dig trên terminal để xác nhận bản ghi TXT và MX đã xuất hiện chưa.
Kết Luận

Lỗi WordPress Mailgun API có thể xuất phát từ nhiều nguyên nhân khác nhau, từ xác thực, DNS, firewall cho đến xung đột plugin. Tuy nhiên, với quy trình kiểm tra bài bản và hiểu rõ cơ chế hoạt động, bạn hoàn toàn có thể tự khắc phục mà không cần nhờ đến chuyên gia. Hãy bắt đầu bằng việc kiểm tra API key và domain, sau đó đi sâu vào log chi tiết từ Mailgun. Đừng quên cập nhật plugin thường xuyên và đảm bảo server đáp ứng đủ yêu cầu kỹ thuật. Một hệ thống email ổn định không chỉ giúp doanh nghiệp vận hành trơn tru mà còn nâng cao trải nghiệm khách hàng và uy tín thương hiệu.
- Khắc phục lỗi WordPress video permissions: Hướng dẫn chi tiết từ A-Z
- Bí Quyết Tìm New Keywords Ahrefs: Chiến Lược Mở Rộng Từ Khóa Hiệu Quả Nhất 2025
- PageSpeed Insights là gì? Hướng dẫn chi tiết từ A-Z để tối ưu tốc độ website
- WooCommerce Add to Cart JavaScript Lỗi: Nguyên Nhân, Cách Khắc Phục Toàn Diện
- Trust Rank Là Gì? Bí Mật Về Tín Hiệu Độ Tin Cậy Trong SEO Mà Bạn Cần Biết
















