phpmailer在本地主机上工作,但当我在ubuntu服务器上上传它时,它会给我错误,邮件不会发送(我使用的是gmail smtp)
如何解决此错误我在注释$mail->isSMTP()后也尝试过,但它不起作用。phpmailer在本地主机上工作,但当我在ubuntu服务器上上传它时,它会给我错误,邮件不会发送(我使用的是gmail smtp),php,amazon-ec2,phpmailer,ubuntu-18.04,Php,Amazon Ec2,Phpmailer,Ubuntu 18.04,如何解决此错误我在注释$mail->isSMTP()后也尝试过,但它不起作用。 它在XAMP电子邮件id上工作正常,密码正确。我应该怎么做?请帮助我解决问题。当您收到错误消息时,最重要的是阅读它所说的内容,因此当它说: <?php if(isset($_POST['sendmail'])) { require 'PHPMailerAutoload.php'; require 'credential.php';
它在XAMP电子邮件id上工作正常,密码正确。我应该怎么做?请帮助我解决问题。当您收到错误消息时,最重要的是阅读它所说的内容,因此当它说:
<?php
if(isset($_POST['sendmail'])) {
require 'PHPMailerAutoload.php';
require 'credential.php';
$mail = new PHPMailer;
$mail->SMTPDebug = 4; // Enable verbose debug output
$mail->isSMTP(); // Set mailer to use SMTP
$mail->Host = 'smtp.gmail.com'; // Specify main and backup SMTP servers
$mail->SMTPAuth = true; // Enable SMTP authentication
$mail->Username = EMAIL; // SMTP username
$mail->Password = PASS; // SMTP password
$mail->SMTPSecure = 'tls'; // Enable TLS encryption, `ssl` also accepted
$mail->Port = 587; // TCP port to connect to
$mail->setFrom(EMAIL, 'litdeveloper');
$mail->addAddress($_POST['email']); // Add a recipient
$mail->addReplyTo(EMAIL);
// print_r($_FILES['file']); exit;
for ($i=0; $i < count($_FILES['file']['tmp_name']) ; $i++) {
$mail->addAttachment($_FILES['file']['tmp_name'][$i], $_FILES['file']['name'][$i]); // Optional name
}
$mail->isHTML(true); // Set email format to HTML
$mail->Subject = $_POST['subject'];
$mail->Body = '<div style="border:2px solid red;">This is the HTML message body <b>in bold!</b></div>'.$_POST['message'];
$mail->AltBody = $_POST['message'];
if(!$mail->send()) {
echo 'Message could not be sent.';
echo 'Mailer Error: ' . $mail->ErrorInfo;
} else {
echo 'Message has been sent';
}
}
?>
解决这一问题的方法是使用普通的网络浏览器登录你的gmail帐户,如果你想知道他们为什么要求你这么做,请点击这个链接,这一点也不奇怪
对于其他信息,您应该按照调试输出中出现的故障排除指南的链接进行操作(您在这里重新发布了两次!),特别是它解决了您遇到的确切问题
除了使用非常旧版本的PHPMailer之外,您的配置和代码看起来是正确的;这不是问题所在
顺便说一句,您现在应该更改您的gmail密码,因为它在调试输出中以易于解码的格式显示。您收到了什么错误消息?SMTP connect()失败。无法发送邮件。邮件程序错误:SMTP connect()失败。我在这里托管了它(litdeveloper.ml/donemail)请访问此查看错误您的服务器似乎不支持SMTP。您应该检查这些配置设置。显然,gmail中有一些配置设置需要整理,请参见您的本地主机环境中的“先决条件”部分。您也使用过gmail吗?我从浏览器注销了所有gmail帐户,然后再次登录并转到此链接(“”)只需按“继续”,然后我再次在浏览器中重新加载代码,最后它就可以工作了。非常感谢您,先生。您给了我解决此问题的方法,这对我很有帮助。非常感谢您
534-5.7.14 Please log in via your web browser and then try again.
534-5.7.14 Learn more at
534 5.7.14 https://support.google.com/mail/answer/78754 g206sm18050557pfb.178 - gsmtp