Рейтинг:1

Почему Drupal не отправляет почту?

флаг cn

При отправке контактной формы письмо не отправляется, хотя есть подтверждающее сообщение. Или при попытке отправить ссылку для сброса пароля, все идет хорошо, Drupal говорит: «Если [email protected] является действительной учетной записью, будет отправлено электронное письмо с инструкциями по сбросу пароля». но письмо не отправляется.

  • Sendmail установлен, протестирован с PHP mail() и работает нормально.

  • Протестировал Sendmail через командную строку и работает нормально: echo "Тема: тест sendmail" | sendmail -v МОЙ ПОЧТА@МОЙ ДОМЕН.XX

  • Тестирование через drush также отлично работает с: drush php-eval "print mail('[email protected]','Тестовая тема из drush','Тестовое сообщение','От: drush@MYSERVER');"

  • Установлен вспомогательный модуль, который выводит сообщение «отправлено» сторожевого таймера, но почта не отправляется

  • При отправке форм в Drupal нет записей в mail.log или syslog

Изменить 1: это живой сервер. Модуль безопасности почты не установлен.Я хотел бы использовать существующий Sendmail, так как он успешно используется на других моих серверах с сайтами Drupal.

Редактировать 2: Некоторые другие сайты Drupal на том же сервере успешно отправляют почту, понятия не имею, почему и почему это не так...

Редактировать 3: Сайты Drupal, которые не отправляют почту, являются тестовыми сайтами TEST.DOMAIN.XX. Сайты, которые отправляют почту, являются обычными, WWW.DOMAIN.XX

Почему Drupal не отправляет почту и как я могу отладить эту проблему? Спасибо

leymannx avatar
флаг ne
Живой сервер? Или локально? Может Мэйлхог? Может модуль Mail Safety установлен? Свифтмэйлер? SMTP?
C.A. Vuyk avatar
флаг cn
спасибо за быстрый ответ, я внес правку в вопрос. Крайним средством будет использование внешнего SMTP, но это кажется неразумным, потому что на сервере есть работающий.
leymannx avatar
флаг ne
Похоже, кто-то умный предотвращает отправку писем с тестового сайта, может быть, на уровне сервера?!
C.A. Vuyk avatar
флаг cn
Это был бы возможный сценарий, да. Однако я тот, кто обслуживает сервер, и ничего подобного не делал...
4uk4 avatar
флаг cn
Мы не знаем, установлены ли у вас другие почтовые плагины, по умолчанию это только core/lib/Drupal/Core/Mail/Plugin/Mail/PhpMail.php. Там вы найдете команду PHP mail(). Вы можете начать отладку здесь. Сначала удалите @ из @mail(), чтобы увидеть сообщения об ошибках.
Kevin avatar
флаг in
Это будет невозможно отладить с нашей стороны. Начните с вышеперечисленного. Имеются ли соответствующие записи MX/TXT/SPF и т. д.
C.A. Vuyk avatar
флаг cn
У меня не установлены почтовые модули, и я пробовал с удаленным @, сообщений об ошибках нет. Все соответствующие записи на месте и другая почта от php проходит. Я понимаю, что это сложно отладить, и если оставить это в покое, проблема сохраняется только на тестовом сайте, так что это хорошо.
C.A. Vuyk avatar
флаг cn
Спасибо, leymannx и Кевин, если и когда появится решение, я обновлю его.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.