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

Drupal-PHP SMTP设置正确,但不会发送电子邮件,php,email,drupal,smtp,Php,Email,Drupal,Smtp,当我的Drupal站点尝试在用户注册时发送欢迎电子邮件时,我收到以下错误:无法连接到“secure.emailsrvr.com”端口465的mailserver,请验证php.ini中的“SMTP”和“SMTP_端口”设置或使用ini_集() 首先,我在PHP.ini中设置了以下内容: SMTP = secure.emailsrvr.com SMTP_PORT = 465 sendmail_from = support@managerspitstop.com usern

当我的Drupal站点尝试在用户注册时发送欢迎电子邮件时,我收到以下错误:无法连接到“secure.emailsrvr.com”端口465的mailserver,请验证php.ini中的“SMTP”和“SMTP_端口”设置或使用ini_集()

首先,我在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发送和电子邮件中,并收到了一封电子邮件


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

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

当您试图发送电子邮件时,对当时发生的事情进行数据包级别的检查是有益的

为此,请安装tcpdump:

apt-get install tcpdump
并启动数据包捕获(以root用户身份运行):


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

DRUPAL!设法使它工作起来。原来我的电子邮件设置一直都是正确的

我通过下载Drupals SMTP模块修复了它,我将其放在了httpdocs/sites/all/modules/SMTP中,然后下载了phpmailer版本2.2.1(仅当您运行Drupal 6.x时需要,并且不使用任何高于2.2.1的phpmailer版本,因为它无法工作),我将其放在了httpdocs/sites/all/modules/SMTP/phpmailer中


分类后,我进入Drupal站点的管理部分,进入模块部分,输入电子邮件设置,BAM成功:D.

你确定这些设置也用于发送电子邮件吗?是的,端口465用于发送,端口995用于接收。我在Rackspace的实时聊天中询问了他们,他们确认我使用的详细信息应该有效。因此,一定是我在PHP设置或Drupals设置中没有正确设置的东西,但我就是想不出是什么:(在修复此问题时,我找到了一种更简单的方法。在Drupal站点的管理部分,您可以对报告->最近的日志条目执行操作,您可以找出失败的原因。
tcpdump -i any -s 0 -w /tmp/sniff-465.pcap port 465