Битрикс не работает отправка писем

Неполадки с почтой на «Битрикс». Как исправить?

Если у вас возникли какие либо вопросы которые вы не смогли решить по нашим публикациям самостоятельно,
то ждем ваше обращение в нашей службе тех поддержки.

Источник:

Без обратной связи сайт словно паралитик: все видит, а сказать ничего не может. Не поступают данные с веб — форм, корпоративные ящики не работают совсем или настраиваются с удивительными ухищрениями. Деньги заплачены, а про-стей-шая, э-ле-мен-тар-ней-шая, важ-ней-шая рабочая задача не решена! Что делать?

Проверяем настройки почтового события веб-формы и связанные шаблоны

Давайте перейдем по пути Панель управления -> Настройки -> Настройки продукта -> Почтовые события и выберем событие.

1. На первой вкладке галочки кодов языка включены?

2. На вкладке «Шаблоны» галочка имени сайта включена?

3. Почтовый шаблон активен?

4. Поле «От кого» заполнено верно (по умолчанию #DEFAULT_EMAIL_FROM#) ?

5. Поле «Кому» заполнено верно (по умолчанию #EMAIL#) ?

Все верно? Смотрим дальше. В настройках модуля веб-формы отключите галочку «использовать упрощенный режим». Перейдите в настройки формы на вкладку «дополнительно» и проверьте, включен ли флаг привязки к почтовому шаблону. Готово?

Перейдите по адресу Настройки -> Инструменты -> SQL-запрос и выполните такой запрос:

select * from b_event where event_name like ‘%form%’ order by date_insert desc

Найдя событие выполнения формы, просмотрите поле SUCCESS_EXEC. Если видите «Y», то письмо из продукта ушло, и вам следует отправить запрос в техподдержку хостинга. Если видите «N», то перейдите в файл

и проверьте, определены ли 2 переменные: BX_CRONTAB и BX_CRONTAB_SUPPORT. Если да, то отмените определение.

Повторите SQL-запрос и снова просмотрите поле SUCCESS_EXEC. Если снова видите «N», очистите кэш в папке /bitrix/managed_cache/ через модуль управления структурой. Ни в коем случае ни через FTP! Если модуль выдаст ошибку, исправьте права доступа к папкам.

Если же значение «F», то функция mail() вернула значение False при отправке. Почему так бывает:

1. Не настроена функция mail() на хостинге. Обратитесь в техподдержку хостера.

2. Почтовый сервер не поддерживает формат письма. Попробуйте изменять настройки отправки, убирать поле ВСС, убирать галочку «Дублировать email адрес в заголовке», ставить «Конвертировать 8-битные заголовки». Если не поможет, запросите у администратора логи почтового сервера.

Наконец, если в поле «0», вернитесь к началу, настройкам почтовых событий, и проверьте заново.

Спасибо за внимание!
Читайте свежий выпуск «Кладовки программиста» каждый день!

Источник

Проблема с отправкой писем в Битрикс

Приветствую читателей thisis-blog.ru!

В сегодняшней статье хочу рассказать об основных проблемах с почтой в CMS 1с-Битрикс.
Порой до адресата не доходят письма и нужно понять, а отправляются ли они вообще? А может они были отправлены, но возникли, какие-то другие ошибки. Так что же делать в таких ситуациях?

Проверить отправляются ли письма

Для проверки достаточно на любой страничке написать следующий php код:

Либо использовать для отправки письма функцию bitrix CEvent::Send.

Если письмо не пришло, можно обращаться в тех. поддержку хостера.

Список отправленных писем

В битриксе нет как такого инструмента, который бы показывал сработавшие почтовые шаблоны и соответствующие отправленные письма. Но всё таки существует обходной путь, как просмотреть их.

Читайте также:  Сломался аудиокодек айфон 7

Для этого нужно зайти в Админку Битрикс, далее Настройки -> Инструменты -> SQL-запрос. Ввести следующий sql код:

Вместо %form% нужно указать конкретный тип почтового события например так, чтобы посмотреть отправленные письма о новых заказах:

Либо можете вообще убрать вторую строку. В результате получите таблицу всех сработавших событий. Нас интересует колонка SUCCESS_EXEC.
‘Y’ — означает успешная отправка;
‘N’ или 0 — письмо не отправлено;
‘F’ — ошибка
Если найденные записи имеют значение ‘Y’ — это означает, что они отправлены и проблем быть не должно.
Но у нас всё плохо, значит обращаемся в тех. поддержку хостинга.

Если ‘N’ или 0- письма по какой-то причине не ушли.
Может помочь такое решение:
перейдите по пути: /bitrix/php_interface/dbconn.php

Закомментируйте или удалите следующие строки:

Попробуйте протестировать снова. Если после этого SUCCESS_EXEC также имеет значение ‘N’, то перейдите в /bitrix/managed_cache/ . Удалите содержимое через модуль управления структурой( не в коем случае не используйте FTP). Если вылезет ошибка, то не хватает доступа. Измените доступ к папкам и повторите снова.

Еще один способ — воспользоваться встроенными методами CMS Битрикс по диагностике.

  • Проверка системы — /bitrix/admin/site_checker.php
  • Монитор качества — /bitrix/admin/checklist.php

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

Возможная ошибка — почтовый сервер не поддерживает формат письма. Попробуйте изменить настройки отправки.

  • Убрать BBC
  • Убрать дублирование email в заголовке
  • Установить Конвертировать 8-битные заголовки

Если ничего не помогло, попробуйте запросить у хостера логи почтового сервера.

Хочу рассмотреть частный случай:

Не приходят на почту уведомления о заполнении веб-форм

Шаги решения проблемы:

  1. Переходим в админ панель: Настройки -> Настройки продукта ->Настройки модулей -> Веб-формы. Отключаем флажок «использовать упрощенный режим». Переходим к настройкам компонента веб-форм на сайте. Вкладка дополнительно. Должен присутствовать флажок активирующий привязку к почтовому шаблону.
  2. Переходим: Панель управления -> Настройки -> Настройки продукта -> Почтовые события. Находим почтовый шаблон для веб-формы. Проверяем правильность данных:
  • Шаблон должен быть активен;
  • Привязан к одному из сайтов(если многосайтовость);
  • От кого: #DEFAULT_EMAIL_FROM#;
  • Кому: #DEFAULT_EMAIL_FROM#».

Спасибо за внимание, также читайте статью про то, как Добавить поле в почтовый шаблон.

Источник

Если не отправляется почта из коробочного Битрикс24

Мы в «Авиви» обратили внимание на частые запросы от пользователей коробочного Битрикс24 по решению проблемы с нерабочей почтой. Во всех случаях прослеживается один и тот же сценарий: когда в коробку пытаются подключить новый почтовый ящик, домен которого отличается от того, на который регистрировался Портал, — письма просто не отправляются. Мы разобрали ситуацию и даже создали собственное решение. Но в целом, пользователям следует знать, что это совсем не «баги» Битрикс24, а закономерность.

Причина нерабочей почты

Смотреть нужно, в первую очередь, на настройки SMTP. «Simple Mail Transfer Protocol» или простой протокол передачи почты отвечает в Битрикс24 не только за электронную почту, но и за приглашение сотрудников в портал, все уведомления и многое другое. В облачной версии набора инструментов для бизнеса, SMTP-сервер находится на стороне разработчиков, ими поддерживается и конфигурируется для широких масс пользователей со всего мира. Поэтому в облаке не составит проблем подключить к своей системе произвольный почтовый ящик, получать и отправлять с него письма.

В коробочной редакции SMTP идет в комплекте с остальными компонентами Битрикс24 и работает уже на Вашем сервере. Его настройка происходит вместе с развертыванием коробки и здесь кроется ключ ко всем последующим трудностям. Обычно SMTP «затачивают» только для доменного имени почты, на которую происходит регистрация портала. Это логично, поскольку неизвестно, почту на каком другом домене, которых в мире миллионы, захотите использовать Вы или Ваши сотрудники.

Читайте также:  Рено лагуна не работает дисплей

Таким образом, в новой коробке будут отлично работать лишь почты с одним доменным именем. Например, если Портал зарегистрирован на Gmail, то без проблем получится подключать и пользоваться всем, что заканчивается на @gmail.com. Но не более. Для остальных доменных имен нужны дополнительные индивидуальные настройки.

Каверзная ситуация

Конечно, если помнить о SMTP с самого начала, стресса будет меньше. Но абсолютное большинство пользователей, примерно 93%, как я уже говорил, вообще не вникают в данную ситуацию. Поэтому многих это вводит в ступор. В реалиях подключить собственный почтовый ящик с отменным от настроенного доменно возможно. Вы выполняете такие же действия, как и в облачном сервисе, указываете нужный адрес и сохраняете настройки. Скажу больше — Вы даже сможете получать письма в Битрикс24 с этого почтового ящика, поэтому подвох заметите не сразу. Но вот отправить ничего не получится: либо нельзя будет выбрать нужную почту, либо просто ничего не произойдет.

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

Два простых решения

Первым решением ситуации с почтой может быть настройка SMTP. Если Вы знаете, как это сделать — можете закрывать эту вкладку.

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

Способности модуля

Кому интересно, мы научили наше решение следить за проверкой отправителя (from). Если доменное почтового сервиса отличается от того, что указано по умолчанию для коробочного Битрикс24, модуль включается в работу и отправляет письмо с нужными настройками SMTP.

Последнее, но не менее важное: наше решение не является кастомизацией ядра, поэтому всем подходит и не ломается от обновлений локальной редакции. Одним словом — получилась, так сказать, панацея, если сравнить с болезнью ситуацию с SMTP.

Собственные почтовые ящики возможно подключить через протокол IMAP. А можно и создать собственный, с которым модуль также работает корректно.

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

Последнее, но не менее важное: наше решение не является кастомизацией ядра, поэтому всем подходит и не ломается от обновлений локальной редакции. Одним словом — получилась, так сказать, панацея, если сравнить с болезнью ситуацию с SMTP.

Источник

Не отправляется почта

Нет, там логи только о почтовом ящике настроенном в виртуальной машине

Dec 25 03:36:07 host=smtp.mail.ru tls=on auth=on user= bitrix@site.com from= bitrix@site.com recipients=root smtpstatus=501 smtpmsg=’501 : recipient address must contain a domain’ errormsg=’recipient address root not accepted by the server’ exitcode=EX_DATAERR

А мне нужны логи отправки писем каждого пользователя со своим почтовым ящиком, например от моего ящика логи yerlan@site.com или коллеги sergey@site.com

Читайте также:  Как починить сигнализацию машины

Нашел инструкцию по отладке отправки письма https://dev.1c-bitrix.ru/learning/course/?COURSE_ID=37&LESSON_ID=9325
Создал test_email.sh в каталоге /usr/bin/

550 Message was not accepted — it contains invalid headers. More specially, ‘From:’ header must match user you are sending mail from. See http://help.mail.ru/mail-help/mailer/popsmtp for details.

Здесь говорится что отправитель фактический(указанный в настройках виртуальной машины) и указанный в письме отправитель должны совпадать.
Как это исправить?

Цитата
Ерлан написал:
Как это исправить?

, и после вызываю msmtp с нужным акаунтом /usr/bin/msmtp -a $account -t -i
— аккаунты прописал в настройках /home/bitrix/.msmtprc

Отправка почты работает.
Минусом является только то, что нужно прописывать настройки для каждого ящика пользователя вручную в файле /home/bitrix/.msmtprc

Цитата
Ерлан написал:
На основе инструкции по отладке отправки письма (ссылка в коменте выше) сделал скрипт который отправляет письма от указанного в письме отправителя.
А именно:
— В конфигурации изменил настройки почты: /etc/php.d/bitrixenv.ini в опции sendmail_path = /usr/bin/send_email_for_mailru.sh
— в скрипте send_email_for_mailru.sh проверяю в теле письма кто указан отправителем

, и после вызываю msmtp с нужным акаунтом /usr/bin/msmtp -a $account -t -i
— аккаунты прописал в настройках /home/bitrix/.msmtprc

Отправка почты работает.
Минусом является только то, что нужно прописывать настройки для каждого ящика пользователя вручную в файле /home/bitrix/.msmtprc

Цитата
и после вызываю msmtp с нужным акаунтом /usr/bin/msmtp -a $account -t -i

When to set a From header: auto adds a From header if the mail does not have one (this is the default), on always sets a From header and overrides any existing one, and off never sets a From header.
If the mail server rejects the mail because its From header does not match the envelope from address (a common anti-spam measure), then you might want to set this option to on.
For compatibility with older versions, add_missing_from_header [(on|off)] is still supported and corresponds to the auto and off settings.

У меня все заработало

Цитата
Константин Нефедов написал:
Я тут в документации отрыл
https://manpages.debian.org/testing/msmtp/msmtp.1.en.html

When to set a From header: auto adds a From header if the mail does not have one (this is the default), on always sets a From header and overrides any existing one, and off never sets a From header.
If the mail server rejects the mail because its From header does not match the envelope from address (a common anti-spam measure), then you might want to set this option to on.
For compatibility with older versions, add_missing_from_header [(on|off)] is still supported and corresponds to the auto and off settings.

У меня все заработало

Простите, а где можно изменить данную настройку?

при помощи msmtp -P видны настройки (set_from_header = auto), но поменять не пойму где, в конфигах нет таких опций.

Цитата
Ерлан написал:
На основе инструкции по отладке отправки письма (ссылка в коменте выше) сделал скрипт который отправляет письма от указанного в письме отправителя.
А именно:
— В конфигурации изменил настройки почты: /etc/php.d/bitrixenv.ini в опции sendmail_path = /usr/bin/send_email_for_mailru.sh
— в скрипте send_email_for_mailru.sh проверяю в теле письма кто указан отправителем

, и после вызываю msmtp с нужным акаунтом /usr/bin/msmtp -a $account -t -i
— аккаунты прописал в настройках /home/bitrix/.msmtprc

Источник

Оцените статью