Вроде всё правильно сделал, но в msmtp_default.log выводится ошибка с указанием - from=root recipients=root
В этой строке php_admin_value sendmail_path "msmtp -t -i -a site1.ru" - site1.ru это же имя папки, где сайт находится, а не доменное имя сайта?
site1.ru это название аккаунта из файла /home/bitrix/.msmtprc можно поменять на любое название, лишь бы совпадали. например вместо site1.ru написать my_account_on_yandex_mail
соответственное в z_bx_custom.conf будет так написано:
Код
<Directory /home/bitrix/www>
php_admin_value sendmail_path "msmtp -t -i -a my_account_on_yandex_mail"
</Directory>
а в /home/bitrix/.msmtprc так:
Код
# smtp account configuration for my_account_on_yandex_mail
account my_account_on_yandex_mail
logfile /home/bitrix/msmtp_my_account_on_yandex_mail.log
host smtp.yandex.ru
port 587
from info@site1.ru
keepbcc on
auth on
user info@site1.ru
password blablabla1
tls on
tls_certcheck off
Mar 23 21:10:02 host=smtp.yandex.ru tls=on auth=on user=этомой@адрес.ру from=root recipients=root smtpstatus=501 smtpmsg='501 5.1.7 Bad address mailbox syntax.' errormsg='envelope from address root not accepted by the server' exitcode=EX_DATAERR
2. А этот путь /home/bitrix/www обязателен? У меня там нет сайта, пусто. И в настройках сейчас такой путь я не указывал, у меня все сайты в ext_www
Гаврил Скрябин написал: Mar 23 21:10:02 host=smtp.yandex.ru tls=on auth=on user=этомой@адрес.ру from=root recipients=root smtpstatus=501 smtpmsg='501 5.1.7 Bad address mailbox syntax.' errormsg='envelope from address root not accepted by the server' exitcode=EX_DATAERR
А в Битриксе у вас настройки писем "от" и "кому" правильные? Не переопределяются в каких-нибудь эвентах или скриптах других? А то похоже, что у вас именно в этом уже проблема. Поле user то правильно, я так понял, подставляется. А from и recipients скриптами спокойно меняется, что видимо у вас и происходит.
Цитата
Гаврил Скрябин написал: 2. А этот путь /home/bitrix/www обязателен? У меня там нет сайта, пусто. И в настройках сейчас такой путь я не указывал, у меня все сайты в ext_www
Конечно не обязательно, все настраивается под ваши сайты. Если у вас все сайты в ext_www то просто не добавляйте <Directory /home/bitrix/www> , но даже если добавите, то не страшно, то что внутри <Directory /home/bitrix/www></Directory> настройки только для этого пути и никак не затрагивают другие настройки.
Сергей Тетерлев написал: А в Битриксе у вас настройки писем "от" и "кому" правильные?
Правильные, несколько раз перепроверил. Когда выставлял ранее одинаковые адреса на все сайты - всё работало нормально.
Сейчас из 20-ти сайтов только у одного поменял адрес в 3-х местах - в .msmtprc, в настройке этого сайта, в самой рассылке. И как раз при попытке отправки писем из этой рассылки подставляется адрес по-умолчанию, а не тот который я установил для этого сайта.
Гаврил Скрябин написал: Сейчас из 20-ти сайтов только у одного поменял адрес в 3-х местах - в .msmtprc, в настройке этого сайта, в самой рассылке. И как раз при попытке отправки писем из этой рассылки подставляется адрес по-умолчанию, а не тот который я установил для этого сайта.
Трудно так помочь на словах, без прямых данных. Увидеть бы как-то ваши оригинальные файлы: - /etc/php.d/bitrixenv.ini - /etc/httpd/bx/custom/z_bx_custom.conf - /home/bitrix/.msmtprc - /home/bitrix/ext_www/site.ru/bitrix/php_interface/init.php и других init.php по различным путям для сайтов, включая /local
ну и настройки из битрикса: главного модуля, модуля subscribe, настройки почтовых шаблонов, посмотреть какие агенты могут ли поменять 'from' и 'to'
Например, в личку мне пришлите содержимое файлов, постараюсь глянуть. Может не правильно что указано.
А! Кстати, а сервисы на сервере перегружали после изменения файлов? systemctl restart httpd ?
1. systemctl restart httpd.services - да, конечно, перезапускал. 2. Может мешает вот это - aliases /etc/aliases? Это в .msmtprc в каждом аккаунте. 4. Аккаунт default обязательно нужен? Сейчас установил на всех сайтах один и тот же адрес - рассылка идет нормально, но ошибка в логе default насчет root. 3. Ещё покопаюсь немного пойду отдыхать (ночь уже). 4. Напишу Вам позже в личном сообщении, если совсем ничего не получится.
Гаврил Скрябин написал: 4. Аккаунт default обязательно нужен? Сейчас установил на всех сайтах один и тот же адрес - рассылка идет нормально, но ошибка в логе default насчет root.
Не обязательно, но тогда будут сыпаться ошибки, что аккаунт default не найден, если какой скрипт без аккаунта решит отправить почту. Если ошибка и в default про root, тогда точно у вас где-то в пхп идет не правильно подставление адреса при отправке почты.
1. Судя по всему у меня проблема из-за того, что я пытаюсь заставить модуль EMail-маркетинг отправлять с разных адресов при условии, что эти 20 сайтов крутятся на одной редакции в режиме многосайтовости. "EMail-маркетинг" всегда пытается отправлять с адреса по-умолчанию, прописанного в настройке, который самый главный на всё ядро сайта. В описании Битрикса так и указано, что модуль "EMail-маркетинг" не поддерживает многосайтовость
Я-то, по логике, думал, что раз в настройках каждого сайта имеется возможность указывать свой адрес электронной почты, то и "EMail-маркетинг" может отправлять рассылку с этих адресов, но не тут-то было
Да ещё и Интернет-магазин тоже отправляет письма только с одного единственного адреса У меня-то несколько магазинов крутятся на одной редакции.
Замучился я со всем этим, не разобрался и отложил на потом. Надеюсь, позже разберусь со всем этим. Наверное, я ещё чего-то недопонимаю Пока придется делать рассылку с одного общего на всех адреса
Прошу подсказать, может я что-то не так делаю и есть реальное решение данного вопроса.
Мне необходимо вывести новости только с 1-м (одним) значением из свойства типа "Список" (множественный). Никак не могу понять где можно разместить фильтр.
VMBitirx установил в кроне такую строку: * * * * * bitrix test -f /home/bitrix/ext_www/s1/bitrix/modules/main/tools/cron_events.php && { /usr/bin/php -d sendmail_path="msmtp -t -i -a s1" -f /home/bitrix/ext_www/s1/bitrix/modules/main/tools/cron_events.php; } >/dev/null 2>&1
А может быть моя проблема заключается в этой части этой строки: && { /usr/bin/php -d sendmail_path="msmtp -t -i -a s1" -f /home/bitrix/ext_www/s1/bitrix/modules/main/tools/cron_events.php; }
Может или удалить эту часть, или же добавить для каждого сайта свою отдельную строку с указанием пути этого сайта? Типа, для сайта s1 - * * * * * bitrix test -f /home/bitrix/ext_www/s1/bitrix/modules/main/tools/cron_events.php && { /usr/bin/php -d sendmail_path="msmtp -t -i -a s1" -f /home/bitrix/ext_www/s1/bitrix/modules/main/tools/cron_events.php; } >/dev/null 2>&1 для сайта s2 - * * * * * bitrix test -f /home/bitrix/ext_www/s1/bitrix/modules/main/tools/cron_events.php && { /usr/bin/php -d sendmail_path="msmtp -t -i -a s2" -f /home/bitrix/ext_www/s1/bitrix/modules/main/tools/cron_events.php; } >/dev/null 2>&1 для сайта s3 - * * * * * bitrix test -f /home/bitrix/ext_www/s1/bitrix/modules/main/tools/cron_events.php && { /usr/bin/php -d sendmail_path="msmtp -t -i -a s3" -f /home/bitrix/ext_www/s1/bitrix/modules/main/tools/cron_events.php; } >/dev/null 2>&1