Если у вас возникли какие либо вопросы которые вы не смогли решить по нашим публикациям самостоятельно,
то ждем ваше обращение в нашей службе тех поддержки.
Без обратной связи сайт словно паралитик: все видит, а сказать ничего не может. Не поступают данные с веб — форм, корпоративные ящики не работают совсем или настраиваются с удивительными ухищрениями. Деньги заплачены, а про-стей-шая, э-ле-мен-тар-ней-шая, важ-ней-шая рабочая задача не решена! Что делать?
Проверяем настройки почтового события веб-формы и связанные шаблоны
Давайте перейдем по пути Панель управления -> Настройки -> Настройки продукта -> Почтовые события и выберем событие.
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.
Если письмо не пришло, можно обращаться в тех. поддержку хостера.
Список отправленных писем
В битриксе нет как такого инструмента, который бы показывал сработавшие почтовые шаблоны и соответствующие отправленные письма. Но всё таки существует обходной путь, как просмотреть их.
Для этого нужно зайти в Админку Битрикс, далее Настройки -> Инструменты -> 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-битные заголовки
Если ничего не помогло, попробуйте запросить у хостера логи почтового сервера.
Хочу рассмотреть частный случай:
Не приходят на почту уведомления о заполнении веб-форм
Шаги решения проблемы:
- Переходим в админ панель: Настройки -> Настройки продукта ->Настройки модулей -> Веб-формы. Отключаем флажок «использовать упрощенный режим». Переходим к настройкам компонента веб-форм на сайте. Вкладка дополнительно. Должен присутствовать флажок активирующий привязку к почтовому шаблону.
- Переходим: Панель управления -> Настройки -> Настройки продукта -> Почтовые события. Находим почтовый шаблон для веб-формы. Проверяем правильность данных:
- Шаблон должен быть активен;
- Привязан к одному из сайтов(если многосайтовость);
- От кого: #DEFAULT_EMAIL_FROM#;
- Кому: #DEFAULT_EMAIL_FROM#».
Спасибо за внимание, также читайте статью про то, как Добавить поле в почтовый шаблон.
У меня стоит на виртуальной машине vmbitrix 7. Но так я не догнал почему у меня не отправляется почта.
В php-консоле уже вводил
И выходит "Неудача, почтовая система не работает, попробуйте еще!"
Создал в корне сайта файл .msmtprc и прописал там
Но файл .msmtp.log не создался, пришлось вручную создать, но без успешно.
Что мне делать?
- Вопрос задан более года назад
- 930 просмотров
Не совсем корректный вопрос, судя по листингу у вас не работает функция mail(), и как следствие не отправляется почта.
Проверьте все необходимые настройки, включая настройки пути sendmail, ссылочка
Далее необходимо сформировать нормально additional_headers
Если почта отправилась, но не дошла до адресата, смотрим записи mx, spf, dkim