How to configure XAMPP to send mail from localhost using PHP ?

https://www.geeksforgeeks.org/how-to-configure-xampp-to-send-mail-from-localhost-using-php/

How to configure XAMPP to send mail from localhost using PHP ?

Step 1:

  • Go to C:\xampp\sendmail: open sendmail.ini file in notepad or any text editor and make the changes as follows.

    change smtp_server=mail.yourdomain.com to smtp_server=smtp.gmail.com
    change smtp_port to smtp_port=587
    change smtp_ssl=auto to smtp_ssl=tls
    uncomment ;error_logfile=error.log to error_logfile=error.log
    uncomment ;debug_logfile=debug.log to debug_logfile=debug.log
    write your gmail id in auth_username: auth_username=*****@gmail.com
    write your gmail assword in auth_password: auth_password=*****
    write your gmail id in force_sender: *****@gmail.com
    change hostname to hostname=localhost

Step:2

  • Go to C:\xampp\php: open php.ini file in notepad or any text editor goto [mail function] part and make the changes as follows.

    comment SMTP=localhost by putting semicolon infront=>;SMTP=localhost
    comment smtp_port=25 by putting semicolon infront=>;smtp_port=25
    comment sendmail_from= by putting semicolon infront=>;sendmail_from=specify path of
     file in sendmail_path to sendmail_path=C:\xampp\sendmail\sendmail.exe
    
    check if extension=php_openssl.dll is enabled=>If there is semicolon in front then
     un-comment it by removing that semicolon

Note: Here the procedure is shown for gmail, but it can be extended to other mails by changing the smtp server, port number. When using gmail take care to enable the option to allow access to less secure webapp.

Last updated