Установка и настройка исходящей почты

Аватар пользователя MGMaster MGMaster 5 января 2011 в 17:27

Установка

По умолчанию Drupal использует для отправки почты возможности хостинга, но я столкнулся с такой неприятностью, что у меня не доходили письма на почтовые ящики mail.ru. А на них сидит большая половина русского человечества.

Для отправки писем я воспользовался модулем SMTP и скриптом phpMailer_v2.2.1 (именно v2.2.1 так как модуль SMTP не поддерживает версию выше).

Модуль, как обычно, копируется в /sites/all/modules
Скрипт копируется в /sites/all/modules/smtp/phpmailer

Рекомендую сразу пропатчить файл class.phpmailer.php в скрипте phpmailer
В модуле уже лежат патчи, но я прикрепил к этому посту уже пропатченный.

Далее модуль нужно включить в списке модуле Drupal.

Настройка

Заходим на страницу /admin/settings/smtp
Там:
Turn this module on or off: on
SMTP сервер: имя SMTP сервера, через который будет посходить отправка
SMTP backup server: если предыдущий не будет найден, то будет использован этот
SMTP порт: 25
Авторизация SMTP - тут я оставил пустым, но для некоторых серверов она нужна
От кого: обратный адрес
Имя отправителя: Имя отправителя
E-mail address to send a test e-mail to: Адрес, куда отправить тестовое сообщение

Оригинал тут

ВложениеРазмер
Иконка пакета class.phpmailer.zip13.24 КБ

Комментарии

Аватар пользователя igor701 igor701 5 января 2011 в 20:47

А почему друпаловская почта не доходит до mail.ru?
Я сталкивался со сходной проблемой, что часть писем теряется.
А теперь даже подозреваю какие письма ...

Но почему? Фильтры типа спамассасин фильтруют друпаловские заголовки?

Аватар пользователя Виктор Степаньков ака RxB Виктор Степаньк... 5 января 2011 в 21:09

У майл.ру крышу рвёт, например, недавно, майл.ру блочило стандартные письма из уберкарта, надо было текст менять.
Притом банило не за конкретный текст, а чисто за структуру письма.

Аватар пользователя Huzzle Huzzle 21 января 2011 в 11:34

у меня не работает, в нете ничего не нашел.

если на странице "admin/settings/smtp" поставить галочку "Enable debugging", то выводится следующее:
......
SMTP -> FROM SERVER:
250-by108.activeby.net Hello mysite [81.25.43.125]
250-SIZE 52428800
250-PIPELINING
250-AUTH PLAIN LOGIN
250-STARTTLS
250 HELP
SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "250 OK
"
SMTP -> get_lines(): $data is "250 OK
"
SMTP -> FROM SERVER:
250 OK
SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "550 relay not permitted
"
SMTP -> get_lines(): $data is "550 relay not permitted
"
SMTP -> FROM SERVER:
550 relay not permitted
SMTP -> ERROR: RCPT not accepted from server: 550 relay not permitted

SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "250 Reset OK
"
SMTP -> get_lines(): $data is "250 Reset OK
"
SMTP -> FROM SERVER:
250 Reset OK
.....

в чем может быть проблема?

Аватар пользователя Huzzle Huzzle 21 января 2011 в 15:54

еще один вопрос)

что нужно чтобы друпал отправлял писма при регистрации?

на странице "admin/user/settings" выбрал:
"Посетители могут создавать учетные записи, разрешение администратора не требуется.",
"Требуется подтверждение по электронной почте, когда посетитель создает учетную запись" - чекбокс отмечен.

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

может еще что надо включить?

Аватар пользователя Huzzle Huzzle 21 января 2011 в 18:36

Я с хостером проблему не решал, просто отправляю письмо от другого адресата, с mail.ru.

При настройке модуля SMTP, отправляю тестовое письмо, и оно теперь отправляется нормально.
Но при регистрации пользователя письмо не отправляется, даже сообщений никаких. Мне кажется дело в друпале.

Аватар пользователя kill_windows kill_windows 15 сентября 2011 в 10:48

Спасибо. Мне помогло. Только мучает меня один вопрос. Почему Друпал стандартными средствами не смог отправлять почту ?

Аватар пользователя JoKeR_13 JoKeR_13 12 мая 2012 в 22:07

Заставил хостера внести изменения на сайте: поменять строчку в заголовке (envelope-from ) - необходимо сменить указанный п/я на любой другой кроме mail.ru
А что касается кракозябр, то попробуйте убрать везде в отправителе всё кроме непосредственно ящика.
Попробуйте в /admin/settings/mimemail установить галочку Use simple address format