[решено] Не отправляется письмо mail

Активация пользователей.
Не приходит письмо для подтверждении регистрации пользователя. Как настроить?




Решил

в config.local.php — $config['general']['reg']['activation'] = true;
в config.php

$config['sys']['mail']['type']             = 'smtp';                 // Какой тип отправки использовать
$config['sys']['mail']['from_email']       = 'ваш_емаил@yandex.ru';      // Мыло с которого отправляются все уведомления
$config['sys']['mail']['from_name']        = 'YourSite';  // Имя с которого отправляются все уведомления
$config['sys']['mail']['charset']          = 'UTF-8';                // Какую кодировку использовать в письмах
$config['sys']['mail']['smtp']['host']     = 'smtp.yandex.ru';            // Настройки SMTP - хост
$config['sys']['mail']['smtp']['port']     = 465;                     // Настройки SMTP - порт
$config['sys']['mail']['smtp']['user']     = 'ваш_емаил@yandex.ru';                     // Настройки SMTP - пользователь
$config['sys']['mail']['smtp']['password'] = 'ваш_пароль_от_емейла';                     // Настройки SMTP - пароль
$config['sys']['mail']['smtp']['secure']   = 'ssl';                     // Настройки SMTP - протокол шифрования: tls, ssl
$config['sys']['mail']['smtp']['auth']     = true;                   // Использовать авторизацию при отправке
$config['sys']['mail']['include_comment']  = true;                   // Включает в уведомление о новых комментах текст коммента
$config['sys']['mail']['include_talk']     = true;                   // Включает в уведомление о новых личных сообщениях текст сообщения

Отправитель письма при использовании sendmail

При отправки писем движком LiveStreet используя sendmail есть один нюанс, что отправителем письма (Return-Path) является какой-нибудь nobody@localhost или www-data@localhost или ещё что-то в подобном духе. (всё зависит от настроек сервера, но при виртуальном хостинге возможность исправить настройки сервера отсутствуют).

Изза чего письма могут оседать на некоторых спам фильтрах. или в некоторых webmailах или почтовых программах высвечиваться типа ваш@мейл On Behalf Of: nobody@localhost, что в принципе не кошерно.

Решение проблемы достаточно простое. (я думаю этот момент стоит внести в штатную сборку LiveStreet)

в файле engine/modules/mail/Mail.class.php

176 строка файла
в функции Init() находим
$this->oMailer->From=$this->sFrom;

и добавляем
$this->oMailer->Sender=$this->sFrom;


т.е. вот так выглядить функция после исправлений
	public function Init() {
		/**
		 * Настройки SMTP сервера для отправки писем
		 */
		$this->sHost     = Config::Get('sys.mail.smtp.host');
		$this->iPort     = Config::Get('sys.mail.smtp.port');
		$this->sUsername = Config::Get('sys.mail.smtp.user');
		$this->sPassword = Config::Get('sys.mail.smtp.password');
		$this->bSmtpAuth = Config::Get('sys.mail.smtp.auth');
		$this->sSmtpSecure = Config::Get('sys.mail.smtp.secure');
		/**
		 * Метод отправки почты
		 */
		$this->sMailerType=Config::Get('sys.mail.type');
		/**
		 * Кодировка писем
		 */
		$this->sCharSet=Config::Get('sys.mail.charset');
		/**
		 * Мыло от кого отправляется вся почта
		 */
		$this->sFrom=Config::Get('sys.mail.from_email');
		/**
		 * Имя от кого отправляется вся почта
		 */
		$this->sFromName=Config::Get('sys.mail.from_name');

		/**
		 * Создаём объект phpMailer и устанвливаем ему необходимые настройки
		 */
		$this->oMailer = new phpmailer();
		$this->oMailer->Host=$this->sHost;
		$this->oMailer->Port=$this->iPort;
		$this->oMailer->Username=$this->sUsername;
		$this->oMailer->Password=$this->sPassword;
		$this->oMailer->SMTPAuth=$this->bSmtpAuth;
		$this->oMailer->SMTPSecure=$this->sSmtpSecure;
		$this->oMailer->Mailer=$this->sMailerType;
		$this->oMailer->WordWrap=$this->iWordWrap;
		$this->oMailer->CharSet=$this->sCharSet;

		$this->oMailer->From=$this->sFrom;
		$this->oMailer->Sender=$this->sFrom; // 176 строка. фиксит return-path
		$this->oMailer->FromName=$this->sFromName;
	}

Задержка при отправке писем

При любом действии, сопряженном с отправкой e-mail письма наступает дикий лейтенси секунд в 8-10. Письмо отправляется и приходит, с этим проблем нет, но ждать когда наконец страничка обновится не айс. Использую почту гугла. Типы отправки пробовал smtp, sendmail — один и тот же результат. Рассчитываю на вашу помощь.

Привожу конф на всякий:
$config['sys']['mail']['type']             = 'smtp';                 // Какой тип отправки использовать                                                           
$config['sys']['mail']['from_email']       = 'robot@SITE.ru'; // Мыло с которого отправляются все уведомления                                                    
$config['sys']['mail']['from_name']        = 'Почтовик SIRE.ru';  // Имя с которого отправляются все уведомления                                                 
$config['sys']['mail']['charset']          = 'UTF-8';                // Какую кодировку использовать в письмах                                                    
$config['sys']['mail']['smtp']['host']     = 'tls://smtp.gmail.com';            // Настройки SMTP - хост                                                          
$config['sys']['mail']['smtp']['port']     = 465;                     // Настройки SMTP - порт                                                                    
$config['sys']['mail']['smtp']['user']     = 'robot@SITE.ru';                     // Настройки SMTP - пользователь                                               
$config['sys']['mail']['smtp']['password'] = 'pass';                     // Настройки SMTP - пароль                                                       
$config['sys']['mail']['smtp']['auth']     = true;                   // Использовать авторизацию при отправке                                                     
$config['sys']['mail']['include_comment']  = true;                   // Включает в уведомление о новых комментах текст коммента                                   
$config['sys']['mail']['include_talk']     = true;                   // Включает в уведомление о новых личных сообщениях текст сообщения 


Заранее спасибо.

отправка сообщения и инвайта

У меня проблема с временем отправки сообщений…
при отправке инвайта или внутреней почты после нажатия отправить до перезагрузки страницы занимает 60 секунд плюс минус несколько милисек время загрузки страницы…

грешил на sendmail на фрихе пока ковырялся пока не заметил что внутренная почта тож с такой же задержкой, но тож не дало результатов…
ставил 'SYS_MAIL_TYPE','sendmail' и 'SYS_MAIL_TYPE','mail' никакой разницы…

после того как закрываеш вкладку полюбому в течении этих 60 сек у тя ни одна страница на сайте не открывается…
может кто сталкивался?
может ли быть в phpmailer где то указано задержка 60 сек?