- Форум
- Отправка Email
- Отправка Email
- Re: Отправка Email
- Re: Отправка Email
- Re: Отправка Email
- Re: Отправка Email
- Re: Отправка Email
- Re: Отправка Email
- Re: Отправка Email
- Re: Отправка Email
- Отправка email в PHP: настройка OpenServer
- Форум
- Настройка почты — отправка через удалённый SMTP
- Настройка почты — отправка через удалённый SMTP
- Почта в OpenServer. Настройка почты и отправка письма по SMTP в OpenServer
- Как посмотреть отправленные письма в OpenServer
- Как настроить отправку почты в OpenServer по SMTP
- Настраиваем SMTP сервер от Google
- Видеоурок по данной теме
Форум
Отправка Email
Отправка Email
Не работает mail.
Если локально какие-то письма должны отправляться, то их нет.
Т.е. если я на каком-то локальном сайте забуду пароль, то восстановить его не получиться. Приходилось переустанавливать или лазить в БД.
Или проверить отправку мыла и т.д.
Из-за этого пересел обратно на denwer, чего очень не хотелось.
Re: Отправка Email
Re: Отправка Email
Re: Отправка Email
Re: Отправка Email
Ага.
Но возникла проблема не понятная. На сервере phpmailer отправляет почту как положено.
на локалке — нет. в папку письма не падают.
phpmailer 5.1 отправлю через функцию mail.
если просто использовать mail, то письма нормально падают, а если через phpmailer, то нет.
странно
Re: Отправка Email
Re: Отправка Email
Re: Отправка Email
Re: Отправка Email
Помогите, пожалуйста, с базовыми настройками PHPMailer.
public function __construct() <
$this->objMailer = new PHPMailer();
$this->objMailer->IsSMTP();
$this->objMailer->SMTPAuth = true;
$this->objMailer->SMTPKeepAlive = true;
$this->objMailer->Host = «mail.mail.com»;
$this->objMailer->Port = 25;
$this->objMailer->Username = «email@mail.com»;
$this->objMailer->Password = «password»;
$this->objMailer->SetFrom(«test@mail.com», «Name»);
$this->objMailer->AddReplyTo(«test@mail.com», «Name»);
Нужно изменить его так, чтобы письма попадали на локальный сервер и отправлялись на локальном сервере, а не на хостинге. Спасибо за ответ.
И нужно ли менять что-нибудь в конфигурационных файлах?
Источник
Отправка email в PHP: настройка OpenServer
В этом уроке мы научимся отправлять почту средствами PHP в рамках сервера OpenServer. О том, чем хорош этот сервер и о том, как его установить, я писал в статье «Установка и настройка OpenServer».
Начнем с того, что в PHP отправить email – очень просто. Для этого используется функция mail(). Чтобы отправить письмо нужно указать адрес получателя, тему письма и текст сообщения, а также специальный заголовок From, с указанием отправителя вот так:
Однако, вот незадача – если этот код выполнить на хостинге, то письмо будет отправлено и придёт получателю, а вот если мы используем OpenServer, то по умолчанию все наши письма будут просто записываться в специальный лог-файл. Убедиться в этом вы можете, заглянув во вкладку «Почта» настроек OpenServer.
И действительно, перейдя по этому пути, мы увидим наше письмо.
Но как же быть, если мы хотим на самом деле отправлять письма? Для этого нам нужен SMTP-сервер. Если кто не знает – электронная почта отправляется по специальному протоколу SMTP, а принимается по протоколу POP3. SMTP-сервер можно поднять самому, привязать к нему свой домен, и использовать свои адреса вроде x@myproject.ru. Мы же в рамках данного урока будем использовать SMTP-сервер Google.
Первым делом вам нужно создать новый аккаунт Google – просто перейдите в режиме инкогнито на https://gmail.com/ и создайте новую учетную запись. Я создал для примера kek777cheburek@gmail.com.
После этого переходим в настройки OpenServer и заполняем поля:
- способ отправки почты: отправлять почту через удаленный SMTP сервер
- SMTP сервер: smtp.gmail.com
- порт: 465
- email отправителя: почта, которую вы зарегали ранее
- имя пользователя: та же почта
- пароль: пароль от почты
- шифрование: авто
После этого жмем кнопку «Сохранить» и перезапускаем сервер.
Изменяем наш код:
После чего запускаем скрипт и проверяем свой ящик.
Мне письмо пришло мгновенно, так как в моём случае и отправитель и получатель были на gmail.com. Если у вас по-другому — возможно, придется подождать.
Стоит отметить, что данная инструкция является универсальной и данные настройки можно задать не только в OpenServer, но и в любом другом месте, где требуется конфигурация SMTP-сервера.
Если возникают проблемы с гуглопочтой и письмо почему-то не отправляется, почитайте комментарии. В частности может помочь вот это решение.
Источник
Форум
Настройка почты — отправка через удалённый SMTP
Настройка почты — отправка через удалённый SMTP
Всем привет! Хочу чтобы письма реально отправлялись, потому в настройках Почта указываю: отправлять почту через удалённый SMTP сервер используя выбранные настройки
Итак что получаем:
1)Первый конфиг и ЛОГ в результате отправки
- 12.09.20 14:44:37 ** — MESSAGE BEGIN —
12.09.20 14:44:37 ** To: *******@********.ru
12.09.20 14:44:37 ** Subject: РРСРРРРРРёСР РРР
12.09.20 14:44:37 ** From: ********.ru
12.09.20 14:44:37 ** Content-type: text/plain; charset=utf-8
12.09.20 14:44:37 **
12.09.20 14:44:37 ** РРРРСРР:
12.09.20 14:44:37 ** 2222222222
12.09.20 14:44:37 **
12.09.20 14:44:37 ** РРС:
12.09.20 14:44:37 ** 1111111111
12.09.20 14:44:37 **
12.09.20 14:44:37 ** РРРРРРСРСРёР:
12.09.20 14:44:37 ** 3333333333
12.09.20 14:44:37 **
12.09.20 14:44:37 ** РСРСРРРРРР СР СССРРРёСС:
12.09.20 14:44:37 ** http://*********.ru/
12.09.20 14:44:37 **
12.09.20 14:44:37 ** IP:
12.09.20 14:44:37 ** 127.0.0.1
12.09.20 14:44:37 ** — MESSAGE END —
12.09.20 14:44:38 ** Connecting to smtp.gmail.com:465
12.09.20 14:44:39 ** Disconnected.
12.09.20 14:44:39 ** Disconnected.
12.09.20 14:44:39 ** Disconnected.
12.09.20 14:44:39 ** Error connecting with SSL. Error connecting with SSL. error:140943FC:SSL routines:SSL3_READ_BYTES:sslv3 alert bad record mac
Письмо не отправилось(
2)Второй конфиг и ЛОГ в результате отправки — пробуем вместо 465 порта и SSL выставить 587 и TLS
- 12.09.20 14:55:15 ** — MESSAGE BEGIN —
12.09.20 14:55:15 ** To: ********@*******.ru
12.09.20 14:55:15 ** Subject: РРСРРРРРРёСР РРР
12.09.20 14:55:15 ** From: *********.ru
12.09.20 14:55:15 ** Content-type: text/plain; charset=utf-8
12.09.20 14:55:15 **
12.09.20 14:55:15 ** РРРРСРР:
12.09.20 14:55:15 ** 72222222222
12.09.20 14:55:15 **
12.09.20 14:55:15 ** РРС:
12.09.20 14:55:15 ** 11111111111
12.09.20 14:55:15 **
12.09.20 14:55:15 ** РРРРРРСРСРёР:
12.09.20 14:55:15 ** 33333333333
12.09.20 14:55:15 **
12.09.20 14:55:15 ** РСРСРРРРРР СР СССРРРёСС:
12.09.20 14:55:15 ** http://********.ru/
12.09.20 14:55:15 **
12.09.20 14:55:15 ** IP:
12.09.20 14:55:15 ** 127.0.0.1
12.09.20 14:55:15 ** — MESSAGE END —
12.09.20 14:55:17 ** Connecting to smtp.gmail.com:587
12.09.20 14:55:17 ** Connected.
12.09.20 14:55:17
12.09.20 14:55:17 >> EHLO PC
12.09.20 14:55:17 250-SIZE 35882577 250-8BITMIME 250-STARTTLS 250 ENHANCEDSTATUSCODES
12.09.20 14:55:17 ** Authenticating as ******@********.ru
12.09.20 14:55:17 >> STARTTLS
12.09.20 14:55:17
12.09.20 14:55:17 >> QUIT
12.09.20 14:55:17 ** Disconnected.
12.09.20 14:55:17 ** Disconnected.
12.09.20 14:55:17 ** Disconnected.
12.09.20 14:55:17 ** Connection Closed Gracefully.
Снова не отправилось((
3)Третий конфиг и ЛОГ в результате отправки — возвращаем 465 порта и SSL, но добавляем POP аутентификацию.
- 12.09.20 15:01:50 ** — MESSAGE BEGIN —
12.09.20 15:01:50 ** To: ******@********.ru
12.09.20 15:01:50 ** Subject: РРСРРРРРРёСР РРР
12.09.20 15:01:50 ** From: *********.ru
12.09.20 15:01:50 ** Content-type: text/plain; charset=utf-8
12.09.20 15:01:50 **
12.09.20 15:01:50 ** РРРРСРР:
12.09.20 15:01:50 ** 72222222222
12.09.20 15:01:50 **
12.09.20 15:01:50 ** РРС:
12.09.20 15:01:50 ** 11111111111
12.09.20 15:01:50 **
12.09.20 15:01:50 ** РРРРРРСРСРёР:
12.09.20 15:01:50 ** 33333333333
12.09.20 15:01:50 **
12.09.20 15:01:50 ** РСРСРРРРРР СР СССРРРёСС:
12.09.20 15:01:50 ** http://*********.ru/
12.09.20 15:01:50 **
12.09.20 15:01:50 ** IP:
12.09.20 15:01:50 ** 127.0.0.1
12.09.20 15:01:50 ** — MESSAGE END —
12.09.20 15:01:50 ** Authenticating with POP3 server
12.09.20 15:02:02 ** Disconnected.
12.09.20 15:02:11 ** Disconnected.
12.09.20 15:02:11 ** Disconnected.
12.09.20 15:02:11 ** Connect timed out.
Снова ошибки((
4)Четвертый конфиг и ЛОГ в результате отправки — ставим 587 порта и TLS, c POP аутентификаций.
- 12.09.20 15:07:27 ** — MESSAGE BEGIN —
12.09.20 15:07:27 ** To: *****@**********.ru
12.09.20 15:07:27 ** Subject: РРСРРРРРРёСР РРР
12.09.20 15:07:27 ** From: ********.ru
12.09.20 15:07:27 ** Content-type: text/plain; charset=utf-8
12.09.20 15:07:27 **
12.09.20 15:07:27 ** РРРРСРР:
12.09.20 15:07:27 ** 72222222222
12.09.20 15:07:27 **
12.09.20 15:07:27 ** РРС:
12.09.20 15:07:27 ** 11111111111
12.09.20 15:07:27 **
12.09.20 15:07:27 ** РРРРРРСРСРёР:
12.09.20 15:07:27 ** 33333333333
12.09.20 15:07:27 **
12.09.20 15:07:27 ** РСРСРРРРРР СР СССРРРёСС:
12.09.20 15:07:27 ** http://*******.ru/
12.09.20 15:07:27 **
12.09.20 15:07:27 ** IP:
12.09.20 15:07:27 ** 127.0.0.1
12.09.20 15:07:27 ** — MESSAGE END —
12.09.20 15:07:27 ** Authenticating with POP3 server
12.09.20 15:07:39 ** Disconnected.
12.09.20 15:07:49 ** Disconnected.
12.09.20 15:07:49 ** Disconnected.
12.09.20 15:07:49 ** Connect timed out.
И снова промах. Пробовал другие службы, например yandex, но тоже ничего толкового не получилось. Вопрос, в чем всетаки проблема и как можно решить? Может ещё какие логи или настройки? Забыл сказать, домен привязан к IP, IP внешний белый.
Источник
Почта в OpenServer. Настройка почты и отправка письма по SMTP в OpenServer
В этом уроке я покажу вам как настроить почту в OpenServer.
Дело в том, что когда мы тестируем сайт на локальном сервере, и пытаемся отправить письмо через форму обратной связи, то на почту сайта (нужный нам E-Mail) письма не приходят.
Такая же ситуация, когда мы пытаемся реализовать отправку почты в PHP. На реальный Email почта не приходит.
Дело в том, что по умолчанию, настройки OpenServer выставлены так, что все письма сохраняются в папку userdata/temp/email/. Они записываются в специальный лог-файл, который можно открыть обычным блокнотом.
И вот для того, чтобы письма сохранялись не в лог-файл, а отправлялись на нужный нам Email, нужно поменять настройки OpenServer. Давайте я покажу вам, где посмотреть уже отправленные вами письма в OpenServer, и как сделать так, чтобы они отправлялись по SMTP протоколу.
И так обо всем по порядку.
- Запускаем OpenServer;
- Кликаем по флажку программы (иконке в трее) правой кнопкой мыши;
- В появившемся контекстном меню выбираем «Настройки»;
- Переходим на вкладку «Почта».
Вот в этом окне нам и нужно будет произвести определенные настройки, чтобы почта, которую мы отправляем в PHP доставлялась на нужный Email.
Как посмотреть отправленные письма в OpenServer
По умолчанию, способ отправки почты у нас выбран «Сохранять письма в папку userdata/temp/email/». Давайте перейдем в эту папку и убедимся в том, что отправленные ранее нами письма находятся именно в ней. Открываем папку программы OpenServer, в ней есть папка userdata, в ней — temp, а в папке temp — находится папка email.
Откройте находящийся там файл с помощью блокнота, и вы убедитесь в том, что отправка писем у вас работает. Просто они не отправляются на указанный в PHP email, а сохраняются вот здесь.
Как настроить отправку почты в OpenServer по SMTP
Чтобы письма реально отправлялись, нам нужно поменять настройки OpenServer. В качестве примера я буду использовать аккаунт Google и соответственно почту Gmail.
Очень важно! Для тестирования и разработки сайтов я рекомендую создать отдельный аккаунт Google (почту).
И так. Заполняем поля во вкладке «Почта» настроек программы OpenServer пошагово:
- Выбираем Способ отправки почты — Отправлять почту через удаленный SMTP сервер;
- SMTP сервер указываем smtp.gmail.com;
- Порт: 465, или 587 (у меня отлично работает 587);
- Email отправителя — это наша реальная почта Gmail;
- Имя пользователя — указываем ту же почту, что и Email отправителя;
- Пароль — указываем пароль от почты;
- Шифрование — Авто.
Кликаем «Сохранить» и в появившемся окне, которое предупреждает нас о том, что сервер будет перезапущен, кликаем ОК.
Вроде бы все и письма должны отправляться по SMTP. Но не все так просто.
Мы настроили OpenServer, но не Google аккаунт. А в аккаунте Google по умолчанию, доступ сторонних приложений запрещен и потому письма у вас пока все равно не будут отправляться.
Нам осталась самая малость — настроить аккаунт Google и сейчас я покажу как это сделать.
Настраиваем SMTP сервер от Google
По умолчанию, в Google с целью обеспечить максимальную безопасность аккаунта, доступ сторонних приложений отключен. А также, в настройках пересылки отключен протокол IMAP (доступ к Gmail других приложений по этому протоколу).
Вот о том, как включить доступ других приложений по протоколу IMAP к вашей почте Gmail, а также как разрешить этим приложениям доступ к вашему аккаунту, я сейчас и расскажу пошагово:
- Заходим в Gmail аккаунт и из него входим в раздел Настройки (Шестерёнка в правом верхнем углу).
- Переходим на вкладку «Пересылка и POP/IMAP» и в блоке «Доступ по протоколу IMAP» выбираем «Включить IMAP» https://mail.google.com/mail/u/0/?tab=wm1#settings/fwdandpop
- Жмем «Сохранить» в самом низу страницы.
Но и это еще не все.
- Переходим в наш аккаунт Google https://myaccount.google.com
- Переходим в раздел «Безопасность» https://myaccount.google.com/security
- В блоке «Ненадежные приложения, у которых есть доступ к аккаунту» выбираем «Вкл.»
Вот теперь все. Почта в OpenServer полностью настроена и если вы отправите в PHP письмо, то оно будет успешно доставлено на тот Email, который вы укажете.
Видеоурок по данной теме
Вот небольшой пример отправки письма в PHP:
Источник