2015-05-07 3 views
1

Я получаю следующую ошибку, когда мой сайт Drupal пытается отправить приветственное письмо при регистрации пользователей: Не удалось подключиться к почтовому серверу на «secure.emailsrvr.com», порт 465, проверить свой «SMTP» и «sMTP_PORT» настройки в php.ini или использовать ini_set()Drupal - PHP SMTP Настройки верны, но электронная почта не отправляет

Я сначала установить следующие в php.ini:

SMTP = secure.emailsrvr.com 
    SMTP_PORT = 465 
    sendmail_from = [email protected] 
    username = [email protected] 
    password = **** 

Но я все равно получил ошибку выше, поэтому я добавил следующее в файл mail.inc, который является файлом на сайте Drupal:

ini_set("SMTP","secure.emailsrvr.com"); 
    ini_set("smtp_port","465"); 
    ini_set("username", "[email protected]"); 
    ini_set("password", "*****"); 
    ini_set("sendmail_from", "[email protected]"); 

Но все равно получите ту же ошибку. Поэтому я связался с Rackspace, на котором я установил электронное письмо, и они сказали мне, что настройки, которые я использую, являются правильными. Чтобы проверить это, я добавил электронное письмо в Outlook 2013 для отправки и отправки по электронной почте и получил электронное письмо просто отлично.

Я осмотрел и не мог найти решение. Любая помощь будет оценена.

+0

Вы уверены, что эти настройки также используются для отправки электронной почты? – SheperdOfFire

+0

Да, порт 465 для исходящих и входящих 995. Я спросил Rackspace в их чате, и они подтвердили, что детали, которые я использую, должны работать. Так должно быть что-то, что я не устанавливаю прямо в настройках PHP или настройках Drupals, но я просто не могу понять, что :( –

ответ

0

BLOODY DRUPAL! Удалось заставить его работать. Оказывается, мои настройки электронной почты были правильными все время.

Я исправил его, загрузив SMTP-модуль Drupals, который я разместил в 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.

0

Обратите внимание, что это всего лишь подсказка для лучшего исследования, а не ответ.

Было бы полезно сделать инспекцию на уровне пакетов, что именно происходит в то время, когда вы пытаетесь отправить электронную почту.

Для этого установите ТСРйитр:

apt-get install tcpdump 

и начать захват пакетов (запустить как корень):

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

Выполните необходимые шаги, чтобы попытаться электронной почты представления на сервер SMTP, дождитесь ответа и остановите захват пакета, нажав CTRL + C. Полученный файл (/tmp/sniff-465.pcap) можно проанализировать (используя wirehark, т. Е.) Для точного поведения попытки SMTP-транзакции.

+0

При устранении этой проблемы я нашел гораздо более простой способ сделать это. В разделе администрирования сайта Drupal вы можете делать в отчетах-> последние записи журнала, и вы можете узнать, почему это не удалось. –

Смежные вопросы