doushuangdui5419 2019-04-30 02:48
浏览 80

XAMPP:如何使用PHP中的Gmail SMTP发送电子邮件?

I'm running as localhost, and I want to send an email through my gmail account to my hotmail account using google's SMTP server. Here are the .ini configurations:

sendmail.ini (the entire file)

[sendmail]

smtp_server=smtp.gmail.com
smtp_port=587
error_logfile=error.log
debug_logfile=debug.log
auth_username=myemailgmail.com
auth_password=mypassword
force_sender=myemail@gmail.com

php.ini (only the [mail function] part):

[mail function]
SMTP=smtp.gmail.com
smtp_port=587
sendmail_from = myemail@gmail.com
sendmail_path = "\"C:\xampp2\sendmail\sendmail.exe\" -t"

When I call mail($email, "Email verification code", "Your verification code is: " . $generated_code); (where $email is some outlook.com email address)

I check the php error log, and there's no errors when calling this function. It executes fine. When I check my outlook email, I did not receive the email.

What can I do to have the email sent?

  • 写回答

2条回答 默认 最新

  • doushui5587 2019-04-30 03:28
    关注

    My account has Two-factor authentication enabled (using Google authenticator), so I was unable to access the account using my password alone. So I bypassed it by going into "Google Account" -> Security -> App passwords and set up an app password for Mail. Now I can access my Google account using the app password (without 2fa) from my computer, by setting:

    auth_password=myGmailAppPassword

    Then I restarted Apache and it worked.

    评论

报告相同问题?