使用核心php mail()通过gmail SMTP发送

Dar*_*ita 16 php gmail smtp

是否可以通过gmail smtp在核心php中发送邮件而无需使用任何外部类?

gav*_*non 19

对此有很多误解.通过PHP的简单"mail()"命令使用gmail发送电子邮件是100%可能的.而且它是100%容易.

安装SSMTP:

sudo apt-get install ssmtp
Run Code Online (Sandbox Code Playgroud)

编辑其设置文件:

sudo nano /etc/ssmtp/ssmtp.conf
Run Code Online (Sandbox Code Playgroud)

在里面,使它类似于此,但使用您自己的凭据:

mailhub=smtp.gmail.com:587
AuthUser=youremail@gmail.com
AuthPass=password
UseSTARTTLS=YES

# You can only do this if you've verified your domain with Gmail.
# If you haven't, delete, or add a # before this
hostname=yourwebsite.com

FromLineOverride=YES
Run Code Online (Sandbox Code Playgroud)

最后,打开你的php.ini,搜索sendmail_path并使用这个值:

sendmail_path = /usr/sbin/ssmtp -t
Run Code Online (Sandbox Code Playgroud)

而已!使用简单的1行邮件功能在PHP中测试它:

mail('to@address.com', 'Subject', 'Message', 'From: Your name <youremail@gmail.com>');
Run Code Online (Sandbox Code Playgroud)

Gmail安全更新

Gmail现在默认阻止此操作.您仍然可以访问:http://www.google.com/settings/security/lesssecureapps

开启此功能开启.

  • 感谢您的反馈意见!不幸的是,选择的答案是错误的.至于使用经过验证的域名,这仅适用于您希望发件人地址与您的Gmail地址不同的情况,例如您拥有一个网站并想要一个专业的发件人地址.但您不能使用任何发件人地址,如bill@microsoft.com,除非您可以证明您已经可以访问此电子邮件.**如何使用Gmail验证此电子邮件:**登录Gmail,在"设置">"帐户"部分,点击"添加您拥有的其他电子邮件地址".输入您的电子邮件,Google会发送一封包含确认链接的验证邮件 (2认同)

Pie*_*ier 6

我不认为这是可能的,因为你需要进行身份验证.此外,您需要通过SSL套接字连接,我不知道股票mail()功能是否支持此功能.

如果您愿意使用Pear Mail软件包,您可能需要查看以下内容:

从PHP页面使用GMail SMTP服务器发送电子邮件

  • 这是完全可能的。请看我的回答。;) (2认同)