Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • Sign Up

Recommended Posts

Здравствуйте

Подскажите пожалуйстав каком направлении копать при настройке почты для опенкарта

на впс поставил centos, настроил работоспособность тестового сайта. все работает за исключением почты

мта postfix(ничего не настроивал)

результат выполнения тестового скрипта (функция mail) - почта не приходит

в логах серевера пусто. в логах опенкарта пусто

 

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

 

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

Edited by military21
Link to post
Share on other sites

1) Проверь установлена ли базовая утилита sendmail. Если ее нет то может как раз молча игнорировать отправку.

2) Если sendmail есть, то смотри логи в /var/log/mail.log там будут все ошибки если есть.

 

Почтовый сервер на VPS поднимать не надо. Если конечно ты используешь в настройках почты (в настройках OpenCart) внешний SMTP сервер.

Link to post
Share on other sites

в логе /var/log/maillog

postfix/sendmail[3977]: fatal: open /etc/postfix/main.cf: Permission denied

что-то с правами похоже 

-rw-r--r--. root root system_u:object_r:postfix_etc_t:s0 main.cf

Edited by military21
Link to post
Share on other sites

5 minutes ago, military21 said:

а разве postfix не заменяет sendmail?

Ну да, я немного пропустил про postfix. Да это аналог sendmail.

А в его логах ничего нет?

 

Link to post
Share on other sites

5 minutes ago, military21 said:

в логе /var/log/maillog

postfix/sendmail[3977]: fatal: open /etc/postfix/main.cf: Permission denied

что-то с правами похоже 

-rw-r--r--. root root system_u:object_r:postfix_etc_t:s0 main.cf

Вот из гугла первое же решение - https://www.centos.org/forums/viewtopic.php?t=47661

Link to post
Share on other sites

да хвала гуглу. тоже его нашел 

селинукс блокировал

пошла в логе движуха (но письмо не доходит)

видимо конфиг нужно еще править. покопаюсь если что не получиться напишу. спасибо за участие ;) 

 

 

Link to post
Share on other sites

8 minutes ago, military21 said:

да хвала гуглу. тоже его нашел 

селинукс блокировал

пошла в логе движуха (но письмо не доходит)

видимо конфиг нужно еще править. покопаюсь если что не получиться напишу. спасибо за участие ;) 

 

 

Должна быть ошибка там же в логах. Часто бывает как раз отклонение сервером получателя например "DSN: Service unavailable". Это значит что в полях типа "ctladdr" как раз лезет localhost. Я для этого  в php.ini правил строку sendmail_path:

 

sendmail_path = "/usr/sbin/sendmail -t -i -f почта@домен.ру"

 

Edited by maksimka12
  • +1 1
Link to post
Share on other sites

спасибо

поковыряюсь напишу что да как позже. 

так то не настраивал вообще ничего касательного почты поэтому наверное нужно прописать и это

 

а так в логах есть

postfix/smtp[4050]: connect to gmail-smtp-in.l.google.com[2a00:1450:4010:c0b::1a]:25: Network is unreachable

 

указал гугловский ящик в админке

Link to post
Share on other sites

7 hours ago, military21 said:

а так в логах есть

postfix/smtp[4050]: connect to gmail-smtp-in.l.google.com[2a00:1450:4010:c0b::1a]:25: Network is unreachable

Похоже что он пытается через IPv6 подключиться а настройки сети ему не дают. Ковырять настройки сети надо, смотреть провайдера, DNS почему такое выдает а не IPv4.. 

Link to post
Share on other sites

11 часов назад, military21 сказал:

postfix/smtp[4050]: connect to gmail-smtp-in.l.google.com[2a00:1450:4010:c0b::1a]:25: Network is unreachable

У вас 25й порт на сервере закрыт. Хостеры на VDS не редко его блокируют по умолчанию для предотвращения спам рассылок с их серверов. Спросите поддержку.

 

А когда порт откроют у вас может быть ещё одна проблема с отправкой на отдельные почтовики (в том числе и Gmail) - должна быть правильная PTR запись:

Цитата

Дополнительные рекомендации для IPv6

  • У IP-адреса отправителя должна быть запись PTR для выполнения обратного запроса DNS. Необходимо, чтобы он совпадал с IP-адресом, который получен путем прямого преобразования доменного имени, указанного в записи PTR, иначе сообщение будет отмечено как спам или отклонено.

https://support.google.com/mail/answer/81126

 

А возможность создать PTR есть далеко не всегда, так что IPv6 проще сразу выключить в конфиге почтового сервера.

Link to post
Share on other sites

PTR актуально и для IPv4. Но по моему опыту зависит от smtp-сервера. Когда юзал smtp яндекса то на некоторые серверы не уходила почта из-за кривой обратной записи. Сейчас переключился на Amazon SES - проблем вообще никаких нет.

Link to post
Share on other sites

Вообщем

с портами ничего не делал

Сделал по видео пару изменений (реализация только отправки через постфикс)

 

Тестирую (по факту изучаю азы )) ) на домене 2 уровня который автоматом дается хостером. Сайт путь будте site.hosting.ru

в кратце в main.cf изменил

myhostname = site.hosting.ru
mydestination = 
inet_interfaces = lookback-only

лог
 

Oct 26 11:05:42 military21 postfix/pickup[1094]: 165741804A3A: uid=1001 from=<php-fpm-user>
Oct 26 11:05:42 military21 postfix/cleanup[1208]: 165741804A3A: message-id=<20171026080542.165741804A3A@site.hosting.ru>
Oct 26 11:05:42 military21 postfix/qmgr[1095]: 165741804A3A: from=<php-fpm-user@site.hosting.ru>, size=807, nrcpt=1 (queue active)
Oct 26 11:05:42 military21 postfix/smtp[1212]: 165741804A3A: to=<почта@gmail.com>, relay=gmail-smtp-in.l.google.com[173.194.222.26]:25, delay=0.25, delays=0.03/0.03/0.06/0.14, dsn=2.0.0, status=sent (250 2.0.0 OK 1509005142 r77si1904404lja.49 - gsmtp)
Oct 26 11:05:42 military21 postfix/qmgr[1095]: 165741804A3A: removed

где

php-fpm-user - user от которого работает php-fpm для site.hosting.ru

 

Письмо ушло и упало в спам

This message may not have been sent by: почта@gmail.com

security: cleardot.gif No encryption

From и To один ящик (из админки)

 

Походу нужно на отдельном домене экспериментировать и с записями играться 

 

Еще вопрос по поводу ранее решенного

в логе /var/log/maillog

postfix/sendmail[3977]: fatal: open /etc/postfix/main.cf: Permission denied

 

решение такое

setsebool -P httpd_can_sendmail=1

 

Но после ребута этот бит восстанавливается. Не подскажете как сделать чтоб состояние запоминалось?

Edited by military21
Link to post
Share on other sites

2 hours ago, military21 said:

решение такое

setsebool -P httpd_can_sendmail=1

 

Но после ребута этот бит восстанавливается. Не подскажете как сделать чтоб состояние запоминалось?

Ну вообще по идее опция -Р как раз и должна сохранять бит в конфиге. Через sudo команду запускал? Может просто прав не было чтобы ее применить глобально.

  • +1 1
Link to post
Share on other sites

может и без -P было (возможно я на другом сайте параллельно это решение нашел)

спасибо попробую повторить

Link to post
Share on other sites

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

server_name newname.cf;

перегрузил nginx

 

сейчас вечером проверил. информация обновилась и теперь при запросе newname.cf браузер отдает содержимое тестового сайта. Однако все ссылки на странице начинаются с названия домена 2 уровня который был до нового (site.hosting.ru)

например site.hosting.ru/about-us вместо ожидаемого newname.cf/about-us

и контент нормально подгружается по старым ссылкам

Link to post
Share on other sites

13 hours ago, military21 said:

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

server_name newname.cf;

перегрузил nginx

 

сейчас вечером проверил. информация обновилась и теперь при запросе newname.cf браузер отдает содержимое тестового сайта. Однако все ссылки на странице начинаются с названия домена 2 уровня который был до нового (site.hosting.ru)

например site.hosting.ru/about-us вместо ожидаемого newname.cf/about-us

и контент нормально подгружается по старым ссылкам

 

А конфиги магазина редактировал? файлы /config.php и /admin/config.php. В них прописан домен сайта. Так же в базе есть запись по-моему, она меняется через настройки магазина.

  • +1 1
Link to post
Share on other sites

спасибо дружище

я забыл что кроме путей там еще и домены прописываются.

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.