Рассылки. Return Path

1

Обратил внимание, что у последних 3 рассылок стоит пометка о том, что Return Path не указан. Но в настройках я его точно указывал, т.к. увидев что такое сообщение было в последних двух, при формировании третьей уделил этому вопросу особое внимание и указал. Но результат аналогичен - после отправки в информации о рассылке сказано: Return Path: Не указан. Хорошо. Поэкспериментировал. Как только не пробовал - ничего не получается. В логах появляются записи вида:

Return-path "noreply@blablabla.ru" forbidden by sending server (sender_id=1): Expected response code 250 but got code "553", with message "553 5.7.1 Sender address rejected: not owned by auth user.

Но раньше ж такого не было...

Да и непонятно, почему в логе упоминается Sender address rejected: not owned by auth user. Отправитель же - другой адрес (support@blablabla.ru). Пробовал в разных вариантах - итог один: в отчете о рассылке в параметрах - Return-path: Не указан.

13 комментариев

  • +1

    Вдогонку: посмотрел исходники рассылки, которая дошла до адресата. Там указано:

    Return-Path: <support@blablabla.ru>

    хотя при отправке там стоял noreply@blablabla.ru

  • +1
    Михаил Ушенин Михаил Ушенин Webasyst 23 ноября 2017 15:16 #

    Скорее всего, Return-Path тут ни при чём. "Рассылкам" не удаётся успешно авторизоваться на SMTP-сервере, и приложение в случае ошибки авторизации сначала пытается избавиться от sub-addressing в адресе Return-Path, который само же перед этим и применяет. А потом и вовсе очищает адрес Return-Path из параметров рассылки, пока полностью не "сдастся" с ошибкой.

    Возможно, что-то изменилось в политике SMTP-сервера, через который вы отправляете сообщения. Например, добавилось обязательное шифрование или что-то ещё. Проверьте правильность подключения к SMTP в свойствах отправителя.

    • +1

      Нет. Данные ввожу верные. Я понимаю что это может звучать неубедительно, поэтому отправил дополнительные материалы в тикете за номером 1412475 =)

      Михаил, если вы посмотрите на приведенный ранее скриншот, то можете заметить что у более ранних рассылок количество отказов стоит 0, затем одна рассылка с цифрой 12, ну а далее все без return-path. Так вот у тех рассылок где стоит 0 там действительно был указан некорректный пароль. Потом я вспомнил об этом, указал корректны и получил 12. Все логично и хорошо. Значит что-то поменялось. Да, действительно, ранее почта отправлялась напрямую с сервера посредством sendmail. Но затем по ряду причин я перешел на отправку через smtp, создав ./wa-config/mail.php и с тех пор получаю такую ерунду с return-path. Я пробовал по разному: и с указанием в mail.php данных для ящика noreply, и без - все едино. Более того, я даже удалял этот mail.php, чистил руками весь кэш - все то же самое: return-path не указан. Собственно поэтому я и не упоминал в топике об этом своем организационном изменении.

      Моя фантазия иссякла. А раз я не могу найти даже теоретических причин возникновения такой ситуации - значит это ошибка =)

      • +1
        Михаил Ушенин Михаил Ушенин Webasyst 23 ноября 2017 17:05 #

        А вы не пробовали настроить адрес отправителя через SMTP в настройках "Рассылок"?

        • +1

          Да, отправитель настроен через SMTP в настройках конкретной Рассылки (видимо это и имелось в виду). Это можно увидеть на отправленных доп.материалах, в самом конце, когда показана информация о рассылке.

        • +1

          Михаил, а есть подозрение что это дело никогда не работало (ну по крайней мере у меня). Дело в том, что приблизительно в тот же период времени когда Рассылки стали ругаться на retuen path я поменял настройки инсталлера в части поля Отправитель. Ранее там стоял адрес noreply, а я поставил support. Делаю такой вывод в т.ч. и потому, что даже попытки отката на ранее существовавшую систему отправки (sendmail, когда Рассылки не ругались) не приводили к опознанию Рассылками return path. А вот про этот момент с инсталлером я подзабыл. Но из любопытства проверю после обеда.

        • +1

          Запись, как у Павла у меня в логах не появлялась, но сообщение "Return Path не указан" тоже было, несмотря на то, что все настройки были выполнены. И на указанный адрес приходили сообщения, но не с данными о неуспешной отправке, а с содержимым письма, если была неуспешная отправка. По этому письму нельзя было понять по какому адресу письмо все-таки не было доставлено. Так и должна работать эта функция? Что в итоге должно приходить на указанный email при неудачной отправке?

        • +1
          Михаил Ушенин Михаил Ушенин Webasyst 27 ноября 2017 12:30 #

          Попробуйте использовать другой адрес Return-Path — не на "Яндексе". У меня есть подозрение, что на сервере "Яндекса" "Рассылкам" всё же не удаётся авторизоваться в вашем случае. Попробуйте получить более подробную информацию об этих неудачных попытках от службы поддержки "Яндекса".

          Если у вас есть возможность, попробуйте добавить отладочный код в методе sendMessage() класса wa-apps/mailer/lib/classes/mailerMessage.class.php, где в блоке catch() {...} скрипт пытается убрать sub-addressing из адреса Return-Path, а потом и полностью очищает его из параметров рассылки.

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

          • +1

            Михаил, спасибо, я попробую. Но все же имейте в виду: когда не удается авторизоваться, то после нажатия на ссылку "Отправить выбранным получателям" (когда формируется перечень уникальных получателей) в случае если происходит неудачная авторизация приложение выдает соответствующее предупреждение о некорректности return path. Если посмотрите те доп. материалы, которые я присылал ранее, то там видно, что такого предупреждения нет. И еще момент: адрес отправителя тоже на Яндексе. И письма приходящие на этот адрес автоматом попадают в Поддержку. Так вот с получением писем с этого адреса у Поддержки никаких проблем нет. Поэтому интуитивно что-то мне подсказывает что ваше предположение с неудачной авторизацией ошибочно. Но я попробую, спасибо.

          • +1

            Докладываю. Поставил Рассылки локально, проверил с теми же параметрами - все как на живом сервере: письмо уходит, return path не подставляется. Стал смотреть под отладчиком. Итог:

            В catch о которым вы говорили мы вообще не попадаем, все проходит штатно. А вот в 129 строке файла /wa-system/vendors/swift/classes/Swift/Mime/SimpleMessage.php

            if (!$this->_setHeaderFieldModel('Return-Path', $address)) {
                $this->getHeaders()->addPathHeader('Return-Path', $address);
            }

            переменная $address содержит правильное значение return-path (noreply+26@blablabla.ru). Но после выполнения 129 строки в заголовках return-path отсутствует

            Но появились-таки логи! В них записано следующее:

            PHP Notice:  Undefined property: Swift_Message::$*Swift_Mime_SimpleMimeEntity*_headers 
            in /var/www/debug/wa-system/vendors/swift/classes/Swift/Mime/SimpleMessage.php on line 132

            Этой информации достаточно, или копать глубже?

            На всякий случай:

            PHP Version 7.0.22-0ubuntu0.16.04.1
            • +1
              Игорь Игорь 25 июля 2018 08:05 #

              Как то удалось разобраться с проблемой? Сейчас тоже самое получил после обновления (обновляюсь всегда с задержкой). Уже несколько месяцев без return path. Думал - сервер глючит. Сейчас поменяли сервер - так же.

            • +1
              Роман Роман 19 апреля 2021 12:52 #

              Вопрос как решается ?
              у меня похожие проблемы

              Добавить комментарий

              Чтобы добавить комментарий, зарегистрируйтесь или войдите