CakePHP CakeEmail Не удалось отправить электронное письмо
Я просмотрел почти все существующие темы, но все еще не могу найти проблему, поэтому решил опубликовать новую.
У меня есть код, который работает на моем живом сервере, и функция электронной почты работает отлично. Это было установлено подрядчиком, и он не оставил документации о том, как настроить CakePHP.
Мне нужно настроить мой промежуточный сервер для работы точно так же, как живой сервер. Я думаю, что у меня все работает, кроме функций электронной почты. Поскольку на обоих серверах выполняется один и тот же код, я уверен, что пропустил установку чего-либо или настройку своего промежуточного сервера.
Итак, какой фреймворк / модуль / библиотека нужен для CakeEmail? Какая конфигурация нужна для этого?
Я бегу на CakePHP 2.3.4
Вот мой фрагмент кода:
App::uses('CakeEmail', 'Network/Email');
$emailTest = new CakeEmail('default');
$emailTest->to('MyEmail@gmail.com');
$emailTest->from(array('me@example.com' => 'My Site'));
$emailTest->subject('About');
try {
$emailTest->send('Hey');
}
catch (SocketException $e) {
echo("Exception: " . $e->getMessage() . "\r\n");
echo("File: " . $e->getFile() . "\r\n");
echo("Line: " . $e->getLine() . "\r\n");
echo("Trace: " . $e->getTraceAsString() . "\r\n");
}
В email.php:
public $default = array(
'transport' => 'Mail',
'from' => 'notification@MySite.com',
// 'charset' => 'utf-8',
// 'headerCharset' => 'utf-8',
);
И я получаю эту трассировку стека:
Исключение: не удалось отправить электронное письмо. Файл: /var/www/MySite/lib/Cake/Network/Email/MailTransport.php Строка: 70 Трассировка: 0 /var/www/MySite/lib/Cake/Network/Email/MailTransport.php(47): MailTransport-> _mail ('staging@gmail.c... ',' hsbsv vdbeh lik... ',' hsbsv vdbeh lik... ',' From: MySite... ', NULL)
1 /var/www/MySite/lib/Cake/Network/Email/CakeEmail.php(1071): MailTransport-> send (Object (CakeEmail))
2 /var/www/MySite/app/Model/Notification.php(238): CakeEmail-> send ('hsbsv vdbeh lik...')
3 [внутренняя функция]: Notification-> afterSave (true, Array)
4 /var/www/MySite/lib/Cake/Event/CakeEventManager.php(246): call_user_func_array (Array, Array)
5 /var/www/MySite/lib/Cake/Model/Model.php(1772): CakeEventManager-> dispatch (Object (CakeEvent))
6 /var/www/MySite/app/Controller/CommentsController.php(160): Модель-> Сохранить (Массив)
7 [встроенная функция]: CommentsController-> add ()
8 /var/www/MySite/lib/Cake/Controller/Controller.php(486): ReflectionMethod-> invokeArgs (Object (CommentsController), Array)
9 /var/www/MySite/lib/Cake/Routing/Dispatcher.php(187): Controller-> invokeAction (Object (CakeRequest))
10 /var/www/MySite/lib/Cake/Routing/Dispatcher.php(162): Диспетчер -> _ invoke (Object (CommentsController), Object (CakeRequest), Object (CakeResponse))
11 /var/www/MySite/app/webroot/index.php(109): Dispatcher-> dispatch (Object (CakeRequest), Object (CakeResponse))
12 {главная}