youtube ptit google plus ptit twitter ptit

Hàm mail() khi sử dụng hosting

Hàm mail() là một trong những hàm rất thông dụng của ngôn ngữ lập trình web PHP, nó dùng để gửi email mà không cần xác nhận tài khoản với máy chủ Email (SMTP Server cài sẵn trên chính máy chủ Web Hosting).

Chính vì nó quá phổ biến nên các mã nguồn website như: Joomla, Wordpress, NukeViet, VBB... đều tận dụng hàm mail() để người cài đặt lên Web Hosting không cần cấu hình gì thêm. Mặc dù các mã nguồn trên cũng có sẵn một bảng cài đặt SMTP hoàn chỉnh, với Username & Password để chứng thực và kết nối đến bất kỳ SMTP nào khác, ngay cả Gmail.com để gởi email đi.


Càng về sau này, khi việc gởi thư rác, lừa đảo, thư giả mạo tràn ngập Internet - Hacker bắt đầu khai thác những lỗ hổng bảo mật của Website và cài vào đó những đoạn mã độc, lợi dụng hàm mail() để gởi thư trái phép. Khi việc này xảy ra, nhà cung cấp dịch vụ Web Hosting buộc phải tạm dừng account hosting của bạn để bảo vệ máy chủ. Bạn nên biết rằng, khi một máy chủ gởi thư rác, nó sẽ bị các máy chủ khác trên thế giới đánh giá xấu (Blacklist) và từ chối nhận email nhiều ngày sau.

Để bảo đảm cho máy chủ và ngăn ngừa vấn nạn thư rác, nhiều nhà cung cấp dịch vụ Web Hosting chuyên nghiệp đã phải ngăn cấm việc sử dụng hàm mail() không chứng thực. Thay vào đó, người lập trình hoặc Admin website phải chuyển sang dùng PHPMailer hoặc những Module gởi email có chứng thực tài khoản với SMTP Server.

Một lý do khác là SMTP Server ngày nay có thể không còn cài đặt trên cùng một máy chủ với Web Hosting, và việc gởi Email phải xác thực tài khoản là chuyện phải làm.