php-Swift Mailer无法发送消息时出现问题
作者:互联网
我的swift mailer有问题,它没有向用户发送消息,我将库提取到我网站中的inc文件夹,并创建了以下消息供swift mailer发送:
注意:如果您可以提出除SwiftMailer之外的其他解决方案,请发表评论.
require_once 'inc/lib/swift_required.php';
//Create the Transport
$transport = Swift_SmtpTransport::newInstance('mail.mywebsite.com', 25)
->setUsername('info@mywebsite.com')
->setPassword('myPassword')
;
$mailer = Swift_Mailer::newInstance($transport);
//Define Message Subject
$message = Swift_Message::newInstance('myWebsite Registration')
//e-mail from
->setFrom(array('info@mywebsite.com' => 'myWebsite'))
//e-mail to
->setTo(array('$email1' => '$username'))
//e-mail body
->setBody('
Message body Here
')
;
$result = $mailer->send($message);
//Show user message after message has been sent
include_once 'msgToUser.php';
exit();
我测试了一下,但没有收到消息,我也不明白为什么,我遵循了官方网站上的说明:http://swiftmailer.org/docs/sending.html
任何人都可以提出问题所在吗?
注意:我使用过PHP mail();可以在发送电子邮件之前使用,但是它们被归类为垃圾邮件.如果可能,任何人都可以建议解决方案如何使用mail();.使电子邮件不是垃圾邮件?请不要提出类似建议:使用主机服务器而不是您的域,例如而不是使用info@yourdomain.com,请使用info@yourhost.com.
解决方法:
我担心您的问题无法得到具体回答,因为在具体的技术问题旁边,您可能会遇到复杂的问题,这些问题需要涉及多个地方,这并非易事.
发送问题
首先,您可以使用SwitfMailer发送电子邮件,这应该“正常工作”.但是,如果您使用的传输方式(例如SMTP服务器)没有传递电子邮件,则这与SwiftMailer直接无关(因为它与PHP邮件无关).
但是,您可以使用SwitfMailer的$result来查找SwiftMailer本身是否在发送电子邮件时遇到任何错误.有关更多信息,请参见SwiftMailer SMTP Troubleshooting (Archived Copy),以防万一您无法使SwiftMailer与SMTP服务器一起使用.
垃圾邮件问题
这不能具体回答.在SO上有时会出现类似的问题,但大多数情况下并没有明确回答,因为该主题涉及您电子邮件的确切内容(电子邮件标头和正文垃圾邮件评分),从哪个服务器发送(IP地址)和基于主机名的垃圾邮件评分,例如,黑名单以及主机名的DNS配置,请参见SPF)和其他内容.
使用SwiftMailer可以帮助您交换邮件后端,例如购买一个商用SMTP网关,该网关专注于降低被评为垃圾邮件的邮件的负担.但是,正如我在其他一些回答/评论中所写的那样:整个企业都在垃圾邮件上运行-在“坏”和“好”方面.因此,并不总是建议信任任何这些实体.
相反,您可以开始了解电子邮件在技术上如何工作,垃圾邮件评分如何工作以及如何通过正确配置的SMTP服务器发送正确的电子邮件.那是一些工作,在这里不能提供答案,因为它的范围很广.
标签:email,php,swiftmailer 来源: https://codeday.me/bug/20191102/1988868.html