Vấn đề

Form liên hệ không gửi mail: cách xử lý

Form submit nhưng không nhận mail có thể do validation, endpoint, spam filter, SMTP, DNS, provider hoặc logging. Cần kiểm tra theo từng lớp.

Trả lời nhanh

Đầu tiên xác định form có thực sự submit thành công hay chỉ UI báo thành công. Sau đó kiểm tra server log, email provider/SMTP, DNS và spam/quarantine.

1. Frontend và network

Kiểm tra validation, request có gửi hay không, response status và console/network errors.

2. Server/endpoint

Xác nhận endpoint nhận payload, validate, ghi log và trả lỗi đúng khi email fail. Không nên báo success trước khi xử lý hoàn tất.

3. SMTP/provider

Kiểm tra credentials, quota, from address, relay policy và response từ provider.

4. DNS và deliverability

  • SPF.
  • DKIM.
  • DMARC khi phù hợp.
  • Spam/quarantine.
  • From domain và reply-to.

5. Tracking và fallback

Form quan trọng nên có logging hoặc lưu lead bền vững; email chỉ nên là một kênh thông báo, không phải nơi duy nhất giữ dữ liệu lead.

Checklist thực hành

01Network
02Endpoint
03Logs
04SMTP
05SPF/DKIM
06Spam
07Persistence

Câu hỏi thường gặp

Form báo thành công có nghĩa email đã gửi không?

Không chắc. UI có thể báo success trước khi provider xác nhận hoặc endpoint có logic lỗi.

Có nên dùng PHP mail mặc định không?

Tùy hosting nhưng SMTP/provider có xác thực và logging thường dễ kiểm soát hơn.

Lead có nên chỉ tồn tại trong email không?

Không nên với funnel quan trọng. Nên có persistence/CRM hoặc logging phù hợp.

Bước tiếp theo

Đọc tiếp theo nhu cầu thực tế