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

7 ответов

Есть сайт cheapsimki.com и при оформлении заказа приходят письма не через смтп, а через виртуальный сервер. Заголовки там поддельные и мейлру их блокирует.

Jan 8 10:37:51 vh338 splogger[5618]: 1n66IR-0001Sc-6u <= rebrovsky@inbox.ru U=madara17 P=local S=2520
Jan 8 10:37:51 vh338 splogger[5625]: 1n66IR-0001Sj-7G X-PHP-Originating-Script: "6588:libz.lib.php"
Jan 8 10:37:51 vh338 splogger[5625]: 1n66IR-0001Sj-7G <= noreply@cheapsimki.com U=madara17 P=local S=2492
Jan 8 10:37:51 vh338 splogger[5621]: 1n66IR-0001Sc-6u ** rebrovsky@inbox.ru R=dnslookup T=remote_smtp H=mxs.mail.ru [94.100.180.31] X=TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256 CV=yes: SMTP error from remote mail server after end of data: 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.

На яндекс и рамблер приходит.

Вот заголовки https://disk.yandex.ru/d/nO6hlpyujfk-kg и https://disk.yandex.ru/d/VFjUvjf6IurYmQ

Смтп подключается в файле config.php - https://disk.yandex.ru/d/0Vj-8ih94hQXeA

А отправка идёт с помощью файла (444 строка) libz.lib.php - https://disk.yandex.ru/d/MO_GYEQgvdNfgw

То есть идёт отправка не через SMTP-серверы, а с сервера виртуального хостинга, на котором размещен аккаунт.

Мне сказали вот что сделать:

При отправки с сервера фактический адрес отправителя выглядит как user@server.timeweb.ru, то есть madara17@vh338.timeweb.ru.

Чтобы настроить рассылку таким образом, чтобы в качестве отправителя указывался определенный адрес, необходимо передавать почтовому серверу в функции mail аргумент -f.

Пример: mail("получатель", "тема", "текст", "заголовки", "-f адрес отправителя")
-f_адрес_отправителя (слитно)

Подробнее: https://timeweb.com/ru/help/x/LoBC

Информация по данному вопросу доступна в документации PHP - http://www.php.net/function.mail

Я НЕ ЗНАЮ КАК ЭТО СДЕЛАТЬ. Люди добрые - подскажите!

Ответы (7)

$smtp_enable = false;
у Вас в файле настроек изначально отключён способ отправки, нужно поставить true
Не разберётесь - пишите https://timeweb.com/ru/community/marketplace/urlvir
Свернуть ответы
Поставил true https://prnt.sc/26byycc и всё равно отправляет не через смтп
Здесь тоже true ставил https://prnt.sc/26byymx и не помогло
В лишнем начали ставить true. Нужно было только в той строчке.
Как я понял, отправка идёт с этого кода https://prnt.sc/26bz1qu
А не с того что ниже, так как удалив его - почта отправляется. А удалив выделенный код - сайт перестаёт работать.
send_smtp_email - вот где начинается код отвечающий за smtp
Отправка вроде через phpMailer идёт. Вот все файлы https://drive.google.com/drive/folders/1npIPVWi5RoFMB1d-hLCNBi3AvtCOOnEm
Я не знаю, что там нужно править
Не выкладывайте пароли в общий доступ.

Похожие вопросы

Андрей Комиссаров
125

Проблема с подключением к серверу через FileZilla

Здравствуйте! Подскажите почему я ни как не могу подключиться к своему серверу TimeWeb через FTP соединение. Уже пересмотрел и перечитал все возможные инструкции, попробовал методом тыка ,с изменением некоторых настроек FileZilla, ничего...
Ваш баланс 10 ТК
1 ТК = 1 ₽
О том, как заработать и потратить Таймкарму, читайте в этой статье
Чтобы потратить Таймкарму, зарегистрируйтесь на нашем сайте
С помощью соцсетей
У меня нет аккаунта Зарегистрироваться
Нажимая кнопку «Зарегистрироваться», я даю согласие на обработку своих персональных данных, указанных в форме регистрации.
С помощью соцсетей
У меня уже есть аккаунт Войти
Нажимая кнопку «Зарегистрироваться», я даю согласие на обработку своих персональных данных, указанных в форме регистрации.
Инструкции по восстановлению пароля высланы на Ваш адрес электронной почты.
Пожалуйста, укажите email вашего аккаунта
Войти в Комьюнити
Регистрация в Комьюнити
Восстановление пароля