Помогите настроить SMTP или по протоколу MAIL

Тема в разделе "Ошибки и их решения", создана пользователем Narcines, 18 сен 2015.

  1. Narcines

    Narcines Новичок

    Сообщения:
    1
    Симпатии:
    0
    Версия OpenCart 2.0.3.1 (rs.2)

    Для начала, скажите, что требуется, что бы работа шла через протокол Mail. И если не сложно, то и совет, какие манипуляции стоит производить на хостинге REG, что бы данный протокол функционировал.

    Отбросив протокол Mail... Проблема в настройке smtp, заполнил все данные по разным мануалам из сети, сделал настройку SMTP через программу Mozilla Thunderbird. Для уточнения, настройки на сайте:

    1. Почтовый протокол - SMTP
    2. Параметры функции mail - Пусто
    3. SMTP Имя сервера - smtp.yandex.ru
    4. SMTP Логин - login@yandex.ru
    5. SMTP Пароль - ***********
    6. SMTP Порт 465 (как я понял следуя из мануалов, то порт 465 - для ssl/tls, 587 - для tls и 25 никакой)
    7. SMTP Таймаут 5
    8. Дополнительные адреса оповещения login1@yandex.ru, login2@yandex.ru, login3@yandex.ru

    Что я сделал в Mozilla Thunderbird. Я следовал данному мануалу на официальном сайте YA - https://yandex.ru/support/mail/mail-clients/mozilla-thunderbird.xml
    и как то тоже не очень помогло.

    Предоставляю логи ошибок:
    /var/www/u8404803/data/www/purelatex.ru/system/library/mail.php on line 170
    2015-09-17 23:47:39 - PHP Notice: Error: Connection timed out (110) in /var/www/u8404803/data/www/purelatex.ru/system/library/mail.php on line 173
    2015-09-17 23:48:12 - PHP Notice: Undefined variable: entry_captcha in /var/www/u8404803/data/www/purelatex.ru/catalog/view/theme/theme604/template/information/contact.tpl on line 134
    2015-09-17 23:50:28 - PHP Warning: fsockopen() [<a href='function.fsockopen'>function.fsockopen</a>]: unable to connect to smpt.yandex.ru:465 (Connection timed out) in /var/www/u8404803/data/www/purelatex.ru/system/library/mail.php on line 170
    2015-09-17 23:50:28 - PHP Notice: Error: Connection timed out (110) in /var/www/u8404803/data/www/purelatex.ru/system/library/mail.php on line 173
    2015-09-17 23:52:25 - PHP Warning: fsockopen() [<a href='function.fsockopen'>function.fsockopen</a>]: unable to connect to smpt.yandex.ru:465 (Connection timed out) in /var/www/u8404803/data/www/purelatex.ru/system/library/mail.php on line 170
    2015-09-17 23:52:25 - PHP Notice: Error: Connection timed out (110) in /var/www/u8404803/data/www/purelatex.ru/system/library/mail.php on line 173
    2015-09-17 23:53:39 - PHP Warning: fsockopen() [<a href='function.fsockopen'>function.fsockopen</a>]: unable to connect to smpt.yandex.ru:465 (Connection timed out) in /var/www/u8404803/data/www/purelatex.ru/system/library/mail.php on line 170
    2015-09-17 23:53:39 - PHP Notice: Error: Connection timed out (110) in /var/www/u8404803/data/www/purelatex.ru/system/library/mail.php on line 173
    2015-09-18 0:13:03 - PHP Warning: fsockopen() [<a href='function.fsockopen'>function.fsockopen</a>]: unable to connect to smpt.yandex.ru:25 (No route to host) in /var/www/u8404803/data/www/purelatex.ru/system/library/mail.php on line 170
    2015-09-18 0:13:03 - PHP Notice: Error: No route to host (113) in /var/www/u8404803/data/www/purelatex.ru/system/library/mail.php on line 173
    2015-09-18 0:17:16 - PHP Notice: Error: EHLO not accepted from server! in /var/www/u8404803/data/www/purelatex.ru/system/library/mail.php on line 199
    2015-09-18 0:20:51 - PHP Notice: Error: EHLO not accepted from server! in /var/www/u8404803/data/www/purelatex.ru/system/library/mail.php on line 199
    2015-09-18 0:27:45 - PHP Notice: Error: EHLO not accepted from server! in /var/www/u8404803/data/www/purelatex.ru/system/library/mail.php on line 198


    Рыл гугл и яд, найти ответ не удалось, помогите пожалуйста, можно даже с выходом в скайп кому не сложно, скайп - mozilla.rost.moon

    Ссылка на магазин: purelatex.ru

    Помогите хоть как то настроить систему, может модули какие-нибудь там, что бы было письмо на почту клиента с данными о товаре и оповещение на почту мне, что такой то товар был заказан. Спасибо!
     
  2. Vlad

    Vlad Эксперт

    Сообщения:
    3.930
    Симпатии:
    941
    Для смтп яндекса кажется нужен и сайт с ssl

    А вот функция mail должна и так работать если хостер не выключили, спросите в поддержке.

    Еще видел тут тему, что если сменить почту с яндекса на другое, то все прекрасно работает.
     
  3. KOTEHKA

    KOTEHKA Новичок

    Сообщения:
    5
    Симпатии:
    0
    Попробуйте зайти в настройки Яндекс почты и там поставить галки для обработки почты по протоколам SMTP и POP3, без них даже почтовые программы не работают, потому как почта Яндекс с почтовым ящиком недавно созданным работает по протоколу IMAP.
     
  4. Yurok_1

    Yurok_1 Новичок

    Сообщения:
    16
    Симпатии:
    4
    Добрый день,
    настроил яндекс почту для домена по SSL? стали приходить заказы и уведомления о новых клиентах, а вот форма обратной связи выдает ошибку. Версия движка 2.2.0 Помогите пжст, пробовал разные способы с форумов не помогает. прихожу к выводу что ее надо просто убрать.


    Fatal error: Uncaught exception 'Exception' with message 'Error: MAIL FROM not accepted from server!' in /home/h95631/data/www/umilinegroup.ru/system/library/mail.php:318 Stack trace: #0 /home/h95631/data/www/umilinegroup.ru/catalog/controller/information/contact.php(25): Mail->send() #1 [internal function]: ControllerInformationContact->index() #2 /home/h95631/data/www/umilinegroup.ru/system/storage/modification/system/engine/action.php(44): call_user_func_array(Array, Array) #3 /home/h95631/data/www/umilinegroup.ru/system/engine/front.php(34): Action->execute(Object(Registry)) #4 /home/h95631/data/www/umilinegroup.ru/system/engine/front.php(29): Front->execute(Object(Action)) #5 /home/h95631/data/www/umilinegroup.ru/system/framework.php(99): Front->dispatch(Object(Action), Object(Action)) #6 /home/h95631/data/www/umilinegroup.ru/index.php(22): require_once('/home/h95631/da...') #7 {main} thrown in /home/h95631/data/www/umilinegroup.ru/system/library/mail.php on line 318
     
  5. Vlad

    Vlad Эксперт

    Сообщения:
    3.930
    Симпатии:
    941
    ну если не помогает поиск по запросу Error: MAIL FROM not accepted from server!
    то наверно стоит пока убрать..
     
  6. Yurok_1

    Yurok_1 Новичок

    Сообщения:
    16
    Симпатии:
    4
    Снова погуглил, нашел:
    В файле \catalog\controller\information\contact.phpзаменить:
    Решение для OC 2.1, но на ОС 2.2. сработало

    Выглядит теперь так:

    $mail->setFrom($this->config->get('config_email'));
    $mail->setSender(html_entity_decode($this->request->post['email'], ENT_QUOTES,'UTF-8'));
     
  7. 2_job

    2_job Новичок

    Сообщения:
    25
    Симпатии:
    7
    Здравствуйте!

    Пожалуйста, помогите настроить почту.
    MX-записи на сервере корректные: Яндекс подтвердил их наличие, правильность и подключение домена.

    В настройках сайта (Настройки/Почта) устанавливал:

    SMTP хост: ssl://smtp.yandex.ru
    SMTP логин: contact@мой_домен.ru
    SMTP пароль: ……
    SMTP порт: 465
    SMTP таймаут: 5

    Тем не менее после подключения Яндекс.почты для домена не работают все модули, так или иначе «завязанные» на почту – форма обратной связи, заказ товара, подписаться на новости, оставить комментарий и т.п. Извещения не доходят ни до отправителя, ни до получателя. Появляются сообщения об ошибках.

    Если в Система/Настройки/Почта/Почтовый протокол установить mail, почта все-равно не работает, хотя сообщения об ошибках и не появляются.

    В случае SMTP-протокола, если в основных настройках сайта в качестве SMTP Логина указывается первоначально созданный ящик на домене - contact@мой домен.ru, в работе модулей появляется следующее сообщение: "Notice: Error: MAIL FROM not accepted from server! In /var/www/…/data/www/…/system/library/mail.php on line 328"

    Но если там же в качестве SMTP Логина указать другие почтовые ящики, созданные в Яндексе на этом домене - info@мой домен.ru или admin@мой домен.ru , появляется другое сообщение об ошибке: "Notice: Error: Password not accepted from server! in /var/www/.../data/www/…/system/library/mail.php on line 289"

    Обе эти ошибки (в зависимости от выбора SMTP Логина) повторяются во всех модулях, связанных с работой почты. Пароли и логины многократно вводились заново как вручную, так и методом копирования. Это так же не зависит от шаблона магазина – помимо действующего, был опробован «чистый» дефолтный (без каких-либо правок), все в точности повторяется. Сайт работает на Opencart 2.1.0.1 (офиц.сборка + русский язык). Самостоятельный поиск решения проблемы до сих пор не дал результата.

    Обращался в поддержку к Яндексу. Их ответ: Судя по всему, проблема возникает на стороне сайта, который Вы используете. Мы никак не ограничиваем приём или отправку писем с ящика contact@мой домен.ru.

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

    На всякий случай проверил сервер на наличие ограничений, создав testmail.php и проверив его скриптом http://domian.com/testmail.php: сообщение «test php mail» пришло на указанный email, т.е. функция php mail работает корректно.

    Сейчас пробую подключить почту через сервер Mail.ru. MX-записи подтверждены. Создан аналогичный почтовый ящик на сервере - contact@мой домен.ru. В Система/Настройки/Почта стоят параметры:

    Режим SMTP
    SMTP хост: ssl://smtp.mail.ru
    SMTP логин: contact@мой_домен.ru
    SMTP пароль:……
    SMTP порт:465
    SMTP таймаут:5

    Почта не отправляется. Выходит другая ошибка:
    Notice: Error: RCPT TO not accepted from server! in /var/www/…/data/www/…/system/library/mail.php on line 346

    На одном из форумов нашел совет изменить mail.php , заменив в двух строках $this->from на $this->username, в итоге вылезла следующая ошибка:
    Notice: Undefined property: Mail::$username in /var/www/…/data/www/…/system/library/mail.php on line 314Notice: Error: MAIL FROM not accepted from server! in /var/www/…/data/www/…/system/library/mail.php on line 328

    Во всех случаях пробовал (по совету другого форума) в настройках «Параметры функции» вписать функцию
    -fcontact@мой_домен.ru . Никакой реакции.

    Я так понимаю, причина – в «родных» настройках Опенкарт. Хостинг никак не ограничивает работу почты. Созданные ящики моего домена на Яндекс и Майл.Ру прекрасно работают (с них отправляется/принимается почта). Остается только сам сайт.

    Что еще можно сделать, чтобы Почта, наконец, заработала на Опенкарт 2.1.0.1? Куда обратиться?
     
    Последнее редактирование: 30 мар 2017
  8. Ален

    Ален Эксперт

    Сообщения:
    2.055
    Симпатии:
    634
    это наверно 101 тема, которая будет пернесена в тему про неработающую почту. Почему же все так требуют к себе внимания, но никто не думает о трудах других, непонятно.

    В общем делать все нужно по порядку. Хотите использовать функцию mail, используйте, но почта должна находится на хостинге где и сайт, а не на яндексе.

    Хотите использовать смтп? Давайте по порядку.

    А в настройках магазина, основной емайл изменен на ящих доменной яндекс почты?
    И такое сообщение выходит всегда или в форме обратной связи. Если только в форме обратной связи, то решение есть, изменением пару строк коyтроллера contact.php Тут не буду повторять ответ.. в поиске по форуму есть.
     
  9. 2_job

    2_job Новичок

    Сообщения:
    25
    Симпатии:
    7
    Спасибо за Ваш ответ! К сожалению, добавление той же самой почты в Основных настройках магазина ничего не меняет. Как я писал, одна и та же ошибка выходит в работе всех модулей, связанных с почтой. Например: "Задать вопрос об этом товаре", Везде одно и то же сообщение об ошибке: <b>Notice</b>: Error: RCPT TO not accepted from server! in <b>/var/www/samogonh/data/www/samogon.h1n.ru/system/library/mail.php</b> on line <b>346</b> Другие модули (например, оформление заказа) не дают сообщений об ошибке, но почта все-равно не работает.
    И в данный момент я пытаюсь настроить подключение к почтовому серверу Майл.Ру (а не Яндекс). Речь идет об ошибке связанной с этой почтой (ошибки, связанные с Яндексом, были приведены вначале просто в качестве примера). Но если Вы можете помочь настроить именно Яндекс, я могу переключиться на него.
     
  10. Ален

    Ален Эксперт

    Сообщения:
    2.055
    Симпатии:
    634
    http://forum.opencart-russia.ru/threads/rcpt-to-not-accepted-from-server.532/#post-5452

    Тестируем на странице обратной связи! Это же ошибка прямо кричащая и говорящая о том, что отправитель который указан в качестве отправителя, не разрешен в качестве отправителя.
     
  11. 2_job

    2_job Новичок

    Сообщения:
    25
    Симпатии:
    7
    Да-да. Спасибо!
    Сейчас подключился к серверу Майл.Ру, закончил с их настройками, почта работает, но форма обратной связи и похожая на нее (связанная с установленным шаблоном) форма "Задать вопрос о данном товаре" по-прежнему выдают ошибку Error: RCPT TO not accepted from server! К сожалению, подсказки не помогли. Я пробовал разные варианты, в том числе по ссылке и других мест (с некоторыми вариациями), и с буржуйского сайта, где эта замена в contact.php, mail.php отдельно расписана для ОК 1.5 и 2.0. Не помогает! Для устранения этой проблемы иногда предлагают также прописать функцию -fecontact@мой_домен.ru в настройках почты. Не помогло!
    Где-то мелькало, что причиной могут быть языковые файлы!
     
  12. Ален

    Ален Эксперт

    Сообщения:
    2.055
    Симпатии:
    634
    Значит все же у вас что то не так.
    Проверьте отправку по смтп с почтового клиента установленного на свой комп.
     
  13. 2_job

    2_job Новичок

    Сообщения:
    25
    Симпатии:
    7
    Здесь все работает. С компа письма с ящика отправляются и доставляются без проблем. Кроме этих двух форм на сайте, не работает также извещение о подписке на обновления. У всех у них какая-то общая проблема.
    И еще. существует второй файл контактов - admin/controller/marketing/contact.php. Его мы совсем не трогаем?
     
    Последнее редактирование: 30 мар 2017
  14. Ален

    Ален Эксперт

    Сообщения:
    2.055
    Симпатии:
    634
    Пока трогаем только один файл catalog\controller\information\contact.php
    и одну форму, стандартная обратная связь.

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

    Или проблемы на хостинге, нужно проверять почему не выходит отправка или все же вы неправильно указываете данные.

    Иначе бы были совсем другие ошибки.
     
  15. 2_job

    2_job Новичок

    Сообщения:
    25
    Симпатии:
    7
    О, чудо! Большое спасибо за подсказку! Вернулся к последнему бэкапу и перед тем, как сделать правки, очистил и обновил кэш модификаторов. Только после этого поменял в contact.php, как написано по ссылке:
    $mail->setTo($this->config->get('config_email'));
    $mail->setFrom($this->request->post['email']);
    $mail->setSender(html_entity_decode($this->request->post['name'], ENT_QUOTES, 'UTF-8'));
    на:
    $mail->setTo($this->config->get('config_email'));
    $mail->setFrom($this->config->get('config_email'));
    $mail->setSender($this->request->post['email']);
    В итоге форма обратной связи заработала!

    Осталась форма "Задать вопрос об этом товаре", по-прежнему выдает ошибку Error: RCPT TO not accepted from server. Я так понимаю, необходимо внести схожие правки в тот же contact.php? или искать в другом месте?
     
  16. Ален

    Ален Эксперт

    Сообщения:
    2.055
    Симпатии:
    634
    правки схожие, но в контроллере модуля. В каком именно не подскажу... так как это к гадалке ))
     
  17. 2_job

    2_job Новичок

    Сообщения:
    25
    Симпатии:
    7
    Да. Все ОК. Аналогичные правки по адресу - catalog/controller/module/product_questions.php
    Благодарю!