Gửi mail từ localhost/WAMP ra ngoài internet nhờ PHPMailer/SMTP

Trong bài này chúng ta sẽ đi thiết lập để có thể gửi mail từ localhost/WAMP server để có thể gửi mail ra ngoài internet sử dụng PHPMailer và SMTP của google nhé.

Khái niệm SMTP

SMTP là chữ viết tắt của Simple Mail Transfer Protocol. SMTP được sử dụng khi gửi email từ ứng dụng đến máy chủ điện tử hoặc khi email được gửi từ máy chủ thư điện tử khác.

SMTP sử dụng cổng 25.

Ứng dụng

Việc cài đặt gửi mail cho WAMP sẽ rất tốt cho những ai thiết kế web, muốn test mail gửi đi hoặc ứng dụng nào đó phải gửi mail ….

Cách cài đặt gửi mail từ localhost/wamp

Trước tiên chúng ta cần có php_smtp trong localhost. php_smtp có sẵn trong phiên bản php 5.3 trở lên. Còn nếu bạn dùng bản thấp hơn thì phải làm các bước sau đây:

  1. Bạn vào theo đường dẫn sau để down load file php_smtp.dll : Link 1 hoặc Link Dự phòng
  2. Sau đó giải nén và copy file php_smtp.dll vào folder C:\wamp\bin\php\php5.4.16\ext (php5.4.16: tùy thuộc vào phiên bản của bạn)
  3. Sau đó mở file php.ini (C:\wamp\bin\apache\Apache2.4.4\bin /* Apache2.4.4: tùy vào phiên bản của bạn*/)
    Tiếp theo bạn copy extension=php_smtp.dll vào file php.ini.
  4. Restart Wamp. Hãy khởi động lại wamp của bạn.

Bắt đầu thiết lập:

Bước 1:

Enable ssl_module in httpd.conf. Bỏ dấu #  tại dòng LoadModule ssl_module modules/mod_ssl.so

Bước 2:

Enable php_openssl,php_smtp and php_sockets extensions for php.ini

Tìm đến các extensions đó và bỏ ; trước các dòng đó là được.

Bước 3:

Download PHPMailer tại đường dẫn sau https://github.com/Synchro/PHPMailer

Sau đó giải nén và copy folder (PHPMailer-master) vào thư mục www của bạn.

Bước 4:

Tạo file send_mail.php tại thư mục www với nội dung sau


<?php
require 'PHPMailer-master/class.phpmailer.php';// Đường dẫn tới file class.phpmailer.php
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->Mailer = 'smtp';
$mail->SMTPAuth = true;
$mail->Host = 'smtp.gmail.com'; // "ssl://smtp.gmail.com" didn't worked
$mail->Port = 465;
$mail->SMTPSecure = 'ssl';
// or try these settings (worked on XAMPP and WAMP):
// $mail->Port = 587;
// $mail->SMTPSecure = 'tls';

$mail->Username = "your_gmail_user_name@gmail.com";
$mail->Password = "your_gmail_password";

$mail->IsHTML(true); // if you are going to send HTML formatted emails
$mail->SingleTo = true; // if you want to send a same email to multiple users. multiple emails will be sent one-by-one.

$mail->From = "your_gmail_user_name@gmail.com";
$mail->FromName = "Your Name";

$mail->addAddress("user.1@yahoo.com","User 1");
$mail->addAddress("user.2@gmail.com","User 2");

$mail->addCC("user.3@ymail.com","User 3");
$mail->addBCC("user.4@in.com","User 4");

$mail->Subject = "Testing PHPMailer with localhost";
$mail->Body = "Hi,<br /><br />This system is working perfectly.";

if(!$mail->Send())
 echo "Message was not sent <br />PHPMailer Error: " . $mail->ErrorInfo;
else
 echo "Message has been sent";
?>

Sau khi thiết lập xong bạn chạy http://localhost/send_mail.php để kiểm tra.

Chú ý cài đặt SMTP tại gmail

Để có thể chạy được SMTP cho mail của bạn thì bạn phải cài đặt tại gmail của mình. Làm như sau

Đã xong chúc các bạn thành công^^

Xem thêm tại http://blog.techwheels.net/send-email-using-wamp-server/

Gửi mail từ localhost/WAMP ra ngoài internet nhờ PHPMailer/SMTP
5 (100%) 2 votes
  • Bình luận
Có thể bạn quan tâm
x