Php Swift Mailer中的“不允许中继访问”
我最近将我的服务器转移到VPS&现在电子邮件功能不适用于外部电子邮件。 以下是我正在使用的设置:Php Swift Mailer中的“不允许中继访问”,php,email,swiftmailer,Php,Email,Swiftmailer,我最近将我的服务器转移到VPS&现在电子邮件功能不适用于外部电子邮件。 以下是我正在使用的设置: $transport = Swift_SmtpTransport::newInstance('ns1.example.com', 465, 'ssl') ->setUsername('testing@example.com') ->setPassword('password'); $mailer = Swift_Mailer::newInstance($transport);
$transport = Swift_SmtpTransport::newInstance('ns1.example.com', 465, 'ssl')
->setUsername('testing@example.com')
->setPassword('password');
$mailer = Swift_Mailer::newInstance($transport);
我得到的错误是:
SMTP error from remote mail server after initial connection:
host dedrelay.where.example.net [XX.XXX.XXX.XX]: 554
m1plded02-01.prod.mesa1.example.net : DED :
gWqF1p02c0cB4sG01 : DED : ESMTP
No Relay Access Allowed From XXX.XXX.XXX
我已经试过telnet了&回复还可以。我试过以下几点:
telnet ns1.example.com 465
答复是:
connected to xx.xxx.xxx.xx
我也无法配置我的桌面电子邮件客户端。有人能说出解决办法吗?任何帮助都将不胜感激
编辑
我甚至不能通过服务器的webmail发送电子邮件。相同的错误。您尝试了telnet ns1.example.com 465,并且它已连接。这表明SMTP服务器已启动并正在运行,您的计算机可以访问它。但这并不是你所需要的全部
123.123.123.123中的错误消息“不允许中继访问”表示SMTP服务器配置为不接受来自此IP地址的用于中继的电子邮件,即需要传递到另一台服务器以进行传递的电子邮件
这是一项反滥用措施,意味着SMTP服务器配置正确
您的SwiftMailer配置没有问题。任何电子邮件客户端,包括桌面客户端,正如您所说,您使用的,答案是相同的
您需要与SMTP服务器的系统管理员联系,并要求他们允许您的IP地址将其SMTP服务器用作中继。如果他们是您的ISP,服务器也可能仅在身份验证后才允许中继:您有一个用于读取电子邮件的用户名/密码对,例如,您需要使用它通过SMTP服务器发送电子邮件。但这只是一个假设,它通常是这样工作的;你必须让他们确切知道