Drupal - PHP SMTP设置正确但电子邮件不会发送

时间:2015-05-07 10:36:00

标签: php email drupal smtp

当我的Drupal网站尝试在用户注册时发送欢迎电子邮件时出现以下错误:无法连接到邮件服务器" secure.emailsrvr.com"端口465,验证您的" SMTP"和" smtp_port"在php.ini中设置或使用ini_set()

我首先在PHP.ini中设置以下内容:

 SMTP = secure.emailsrvr.com
    SMTP_PORT = 465
    sendmail_from = support@managerspitstop.com
    username = support@managerspitstop.com
    password = ****

但我仍然遇到上述错误,所以我将以下内容添加到mail.inc文件中,该文件是Drupal站点中的文件:

 ini_set("SMTP","secure.emailsrvr.com");
    ini_set("smtp_port","465");
    ini_set("username", "support@managerspitstop.com");
    ini_set("password", "*****");
    ini_set("sendmail_from", "support@managerspitstop.com");

但仍然得到同样的错误。所以我联系了我已经设置了电子邮件的Rackspace,他们告诉我我使用的设置是正确的。为了测试这一点,我将电子邮件添加到Outlook 2013发送并发送电子邮件并收到一封电子邮件。

我环顾四周,无法找到解决方案。任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:0)

请注意,这只是提示更好的调查手段,而不是答案。

当您尝试发送电子邮件时,对当前正在进行的操作进行数据包级别检查将是有益的。

为此,请安装tcpdump:

apt-get install tcpdump

并开始数据包捕获(以root身份运行):

tcpdump -i any -s 0 -w /tmp/sniff-465.pcap port 465

执行尝试向SMTP服务器提交电子邮件所需的步骤,等待响应并按CTRL + C停止数据包捕获。可以分析生成的文件(/tmp/sniff-465.pcap)(使用wireshark,即),以确定尝试的SMTP事务的确切行为。

答案 1 :(得分:0)

BLOODY DRUPAL!管理以使其工作。结果我的电子邮件设置一直都是正确的。

我通过下载Drupals SMTP模块修复了它,我将其置于httpdocs / sites / all / modules / smtp中,然后我下载了phpmailer版本2.2.1(只有在运行Drupal 6.x且不使用版本时才需要) PHPMailer高于2.2.1,因为它不起作用)https://github.com/PHPMailer/PHPMailer/releases/tag/v2.2.1我把它放在httpdocs / sites / all / modules / smtp / phpmailer。

一旦对其进行了排序,我就进入了Drupal网站的“管理”部分,然后进入模块部分并输入了电子邮件设置,并且它运行了BAM:D。