您好我正在努力建立并运行一个网站。它目前托管在AWS上,因此我目前没有运行自己的smtp服务器。在阅读了几篇文章后,我了解到我们可以将gmail用作smtp服务器。
我想仔细检查我读的是否正确,我将使用智能工作板软件,我可以插入gmail提供的值并将其用作smtp服务器吗?
答案 0 :(得分:6)
我成功使用了GMail SMTP服务器。
我们确实有一个公司的GMail帐户,但我认为这并不重要。个人GMail帐户就足够了。
我没有PHP示例但ASP.Net的以下配置应该提供足够的指导:
<mailSettings>
<smtp from="me@gmail.com">
<network enableSsl="true" host="smtp.gmail.com" port="587" userName="me@gmail.com" password="mypassword" />
</smtp>
</mailSettings>
如果某人有合适的PHP示例,请随时编辑我的答案或发布您自己的。
答案 1 :(得分:6)
是的,Google允许通过其SMTP连接,并允许您从GMail帐户发送电子邮件。
您可以使用许多PHP邮件脚本。一些最受欢迎的SMTP发件人是:PHPMailer(有效的tutorial)和SWIFTMailer(以及他们的tutorial)。
从您的服务器连接和发送电子邮件所需的数据包括GMail帐户,password
帐户,SMTP server
(本例中为smtp.gmail.com
)和端口(在这种情况下465
)您还必须确保通过SSL发送电子邮件。
使用PHPMailer发送类似电子邮件的简短示例:
<?php
require("class.phpmailer.php");
$mail = new PHPMailer();
$mail->IsSMTP(); // telling the class to use SMTP
$mail->SMTPAuth = true; // SMTP authentication
$mail->Host = "smtp.gmail.com"; // SMTP server
$mail->Port = 465; // SMTP Port
$mail->Username = "john.doe@gmail.com"; // SMTP account username
$mail->Password = "your.password"; // SMTP account password
$mail->SetFrom('john.doe@gmail.com', 'John Doe'); // FROM
$mail->AddReplyTo('john.doe@gmail.com', 'John Doe'); // Reply TO
$mail->AddAddress('jane.doe@gmail.com', 'Jane Doe'); // recipient email
$mail->Subject = "First SMTP Message"; // email subject
$mail->Body = "Hi! \n\n This is my first e-mail sent through Google SMTP using PHPMailer.";
if(!$mail->Send()) {
echo 'Message was not sent.';
echo 'Mailer error: ' . $mail->ErrorInfo;
} else {
echo 'Message has been sent.';
}
?>
答案 2 :(得分:2)
我相信身份验证是必需的,但我不明白为什么不这样做。我不会为你做研究,但有几件事需要研究:
答案 3 :(得分:0)
您可以为此作业使用PHPMailer class。您可以轻松配置smtp。
配置示例
if (class_exists(@PHPMailer)) {
$smtp_mail = new PHPMailer();
$smtp_mail->isSMTP();
$smtp_mail->SMTPAuth = true; // enable SMTP authentication
$smtp_mail->SMTPSecure = "ssl"; // sets the prefix to the servier
$smtp_mail->Host = "smtp.gmail.com"; // sets GMAIL as the SMTP server
$smtp_mail->Port = 465; // set the SMTP port
$smtp_mail->Username = "info@example.com"; // GMAIL username
$smtp_mail->Password = "password"; // GMAIL password
$smtp_mail->From = "info@example.com";
$smtp_mail->FromName = "Name";
$smtp_mail->AltBody = "This is the body when user views in plain text format"; //Text Body
$smtp_mail->WordWrap = 50; // set word wrap
$smtp_mail->AddReplyTo("info@example.com","Name");
$smtp_mail->isHTML(true); // send as HTML
}
答案 4 :(得分:0)
尽管从技术上讲,您可以将Gmail用作SMTP服务器,但不建议将其用于大型网站。到时候,您可能会收到类似“ 421 4.7.0临时系统问题”之类的问题,或者它不是设计用于应用程序而是一个人使用的。
上述错误消息的相关问题: Gmail SMTP error - Temporary block?