XAMPP PHP sendmail using yahoo mail [work-100%]

Berikut saya akan berikan konfigurasi supaya XAMPP dapat mengirim email dari localhost ke email manapun bahkan dapat mengirim ke gmail, yahoo, hotmail, dll. konfigurasi yang dilakukan sangat mudah dan sederhana *Dengan syarat XAMPP terkoneksi dengan internet, Silahkan ikuti petunjuk berikut:

 

Langkah Yang perlu dipersiapkan di yahoo mail

  1. Buka pengaturan Account Info 
  2. Buka tab Account Security dan scroll turun Other way to sign in atau App Password 
  3. Klik link bertulis Generate app password , Ikuti wizard sampai selesai
    Klik tombol Get started 
    Tulis nama aplikasi kamu
    Copy & simpan password hasil generator (INGAT: password ini tanpa spasi disitu tertampil ada pemisah spasi hanya bertujuan untuk mempermudah membaca saja)
    Catat informasi
    Protocol smtp
    SMTP Host ssl://smtp.mail.yahoo.com
    Port 465
    Username [email protected] (username yang sama dengan login yahoo kamu)
    Password ixpcigmk******** (Password aplikasi yang didapat dari hasil generat diatas tanpa spasi)
  4. kamu bisa membuat lebih dari 1x dan bisa menghapus jika memang sudah tidak dipakai
    Informasi tabel diatas akan digunakan untuk setting sendmail ataupun mail relay lain dan kamu juga bisa menggunakannya untuk PHPmailer juga

Step 1

buka file php.ini (php/php.ini) sesuaikan sendmail_path

 
 
 
[mail function] 
; XAMPP: Comment out this if you want to work with an SMTP Server like Mercury 
; SMTP = localhost 
; smtp_port = 25 
 
; For Win32 only. 
; http://php.net/sendmail-from 
;sendmail_from = 
 
; XAMPP IMPORTANT NOTE (1): If XAMPP is installed in a base directory with spaces (e.g. c:\program filesD:\xampp) fakemail and mailtodisk do not work correctly. 
; XAMPP IMPORTANT NOTE (2): In this case please copy the sendmail or mailtodisk folder in your root folder (e.g. C:\sendmail) and use this for sendmail_path. 
; XAMPP: Comment out this if you want to work with fakemail for forwarding to your mailbox (sendmail.exe in the sendmail folder) 
sendmail_path = "\"D:\xampp\sendmail\sendmail.exe\" -t" 
 
; XAMPP: Comment out this if you want to work with mailToDisk, It writes all mails in the D:\xampp\mailoutput folder 
;sendmail_path="D:\xampp\mailtodisk\mailtodisk.exe" 
 
; Force the addition of the specified parameters to be passed as extra parameters 
; to the sendmail binary. These parameters will always replace the value of 
; the 5th parameter to mail(), even in safe mode. 
;mail.force_extra_parameters = 
 
; Add X-PHP-Originating-Script: that will include uid of the script followed by the filename 
mail.add_x_header=Off 
 
; Log all mail() calls including the full path of the script, line #, to address and headers 
;mail.log = "D:\xampp\php\logs\php_mail.log" 

Step 2

buka sendmail.ini (sendmail/sendmail.ini) sesuaikan smtp_server, smtp_port, smtp_ssl, auth_username, auth_password, dan force_sender

 
 
 
[sendmail] 
 
; you must change mail.mydomain.com to your smtp server, 
; or to IIS's "pickup" directory.  (generally C:\Inetpub\mailroot\Pickup) 
; emails delivered via IIS's pickup directory cause sendmail to 
; run quicker, but you won't get error messages back to the calling 
; application. 
 
smtp_server=smtp.mail.yahoo.com 
 
; smtp port (normally 25) 
 
smtp_port=465 
 
; SMTPS (SSL) support 
;   auto = use SSL for port 465, otherwise try to use TLS 
;   ssl  = alway use SSL 
;   tls  = always use TLS 
;   none = never try to use SSL 
 
smtp_ssl=auto 
 
; the default domain for this server will be read from the registry 
; this will be appended to email addresses when one isn't provided 
; if you want to override the value in the registry, uncomment and modify 
 
;default_domain=mydomain.com 
 
; log smtp errors to error.log (defaults to same directory as sendmail.exe) 
; uncomment to enable logging 
 
error_logfile=error.log 
 
; create debug log as debug.log (defaults to same directory as sendmail.exe) 
; uncomment to enable debugging 
 
debug_logfile=debug.log 
 
; if your smtp server requires authentication, modify the following two lines 
 
[email protected] 
auth_password=passwordmail 
 
; if your smtp server uses pop3 before smtp authentication, modify the 
; following three lines.  do not enable unless it is required. 
 
;pop3_server= 
;pop3_username= 
;pop3_password= 
 
; force the sender to always be the following email address 
; this will only affect the "MAIL FROM" command, it won't modify 
; the "From: " header of the message content 
 
[email protected] 
 
; force the sender to always be the following email address 
; this will only affect the "RCTP TO" command, it won't modify 
; the "To: " header of the message content 
 
;force_recipient= 
 
; sendmail will use your hostname and your default_domain in the ehlo/helo 
; smtp greeting.  you can manually set the ehlo/helo name if required 
 
;hostname= 

Note: jangan lupa mengganti [email protected] dan passwordmail sesuai dengan akun anda.

Step 3

Silahkan cek dengan kode php mail(), contoh:

 
 
 
$from_mail = '[email protected]'; 
$to = '[email protected]'; 
 
$subject = 'SUBJECT MESSAGE'; 
$message = << 
You can change body message 
AKAM; 
 
$headers  = 'MIME-Version: 1.0' . "\r\n"; 
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; 
$headers .= 'To: Your Name <'.$to.'>' . "\r\n"; 
$headers .= 'From: NO-REPLY <'.$from_mail.'>' . "\r\n"; 
 
$sendtomail = mail($to, $subject, $message, $headers); 
if( $sendtomail ) echo 'Success'; 
else echo 'Failed';

Bagaimana hasilnya? Jika masih belum berhasil terkirim ke email, biasanya karena jika di windows ada security file, lakukan langkah berikut:

Step - Change Compatibility (Windows Only)

  1. Buka dengan explorer ke directory sendmail .
  2. Klik-Kanan file sendmail.exe pilih Properties.
  3. Pindah ke tab Compatibility .
  4. Klik tombol Change settings for all users .
  5. Silahkan rubah bagian Compatibility mode menjadi Windows XP (Service Pack 3) .
  6. Beri tanda centang pada bagian Run this program as an administrator .
  7. Klik tombol OK -> OK.

Silahkan cek kembali dengan menjalankan file php, harusnya sudah berhasil terkirim jika belum maka itu perlu troubleshooting seperti ini di windows kamu, karena masing-masing pengguna pasti sudah beda melakukan sesuatu terhadap windowsnya, bisa jadi karena antivirus baik itu deffender atau yang lain

Tambahan catatan:
yahoo mail memiliki batasan sehingga tidak bisa mengirim email banyak dalam waktu sekaligus, jika dipaksa maka akan terkena blokir temporary bersifat sementara setelah beberapa waktu akan bisa digunakan lagi, serta penggunaan yahoo mail tidak bisa mengirim banyak, jika akan mengirim banyak biasanya menggunakan yahoo mail plus

Terimakasih semoga informasi ini bermanfaat

Comments (0)

Leave a comment

 

The power of documents

Kami sajikan dengan bahasa yang mudah dengan disertai command line yang bisa di copy-paste sehingga memudahkan untuk melakukan modifikasi command line