Отправка писем с помощью phpmailer
Содержание:
- Популярные выражения со словом «стакан»
- SMTP с авторизацией по протоколу SSL. Яндекс
- Настройка почты ssmtp для PHP mail()
- Как настроить подключение SMTP
- Бизнес модель сервиса Dropbox
- SMTP с авторизацией по протоколу SSL. Майл
- Что это такое
- Помещаем HTML и PHP код отправки формы в один файл
- Отправка с вложением
- Отправка почты php через SMTP-настройка скрипта
- Windows 7 запускается, но показывает только черный экран и указатель мыши
- Функция mail()
- Simple Mail Transmission Protocol (SMTP)
- Отправка писем через SMTP с помощью PHPMailer на примере Yandex и Google
- Защита от спама
- Почему Windows 10 выходит из сна, как устранить такую самостоятельность
- Sanitizing email user inputs
- Отправка почты через smtp яндекса
- Отправка почты через smtp mail ru
- Names 4 Brands
- dum
Популярные выражения со словом «стакан»
SMTP с авторизацией по протоколу SSL. Яндекс
Для работы с почтовым сервером Яндекс ни чего не изменилось, единственное, что при вызове класса, необходимо указывать ссылку на хост, работающий через SSL и изменился номер порта: был 25, стал 465. Выглядит код отправки теперь вот так:
// пример использования require_once "SendMailSmtpClass.php"; // подключаем класс $mailSMTP = new SendMailSmtpClass('zhenikipatov@yandex.ru', '****', 'ssl://smtp.yandex.ru', 'Evgeniy', 465); // $mailSMTP = new SendMailSmtpClass('логин', 'пароль', 'хост', 'имя отправителя'); // заголовок письма $headers= "MIME-Version: 1.0\r\n"; $headers .= "Content-type: text/html; charset=utf-8\r\n"; // кодировка письма $headers .= "From: Evgeniy <admin@vk-book.ru>\r\n"; // от кого письмо $result = $mailSMTP->send('zhenikipatov@yandex.ru', 'Тема письма', 'Текст письма', $headers); // отправляем письмо // $result = $mailSMTP->send('Кому письмо', 'Тема письма', 'Текст письма', 'Заголовки письма'); if($result === true){ echo "Письмо успешно отправлено"; }else{ echo "Письмо не отправлено. Ошибка: " . $result; }
Настройка почты ssmtp для PHP mail()
17 октября 2013, 20:05
Пришлось на днях настраивать почту на тестовом веб-сервере. Нужно это для того, чтобы наше серверное приложение могло отправлять пользователям уведомления на почту. Выделенный настроенный почтовый сервер имеется, поэтому нужно было всего-навсего настроить какой-нибудь MTA на пересылку почты. Так как с админством уже завязал (да и ранее почту под линукс настраивать не приходилось), то пришлось найти несколько готовых варинатов из которых слепил свой. Собственно здесь закладка для себя (вдруг когда-нибудь пригодится).
Сервер на котором выполнялась настройка: Ubuntu 12.04 LTS.
По рекомендациям в интеренете решил установить там простенький МТА — ssmtp:
$ sudo apt-get install ssmtp
Затем нужно отредактировать конфигурационные файлы ssmtp:
sudo nano /etc/ssmtp/ssmtp.conf
12345678910111213141516171819202122232425 | # Config file for sSMTP sendmail # # The person who gets all mail for userids < 1000 # Make this empty to disable rewriting. root=ubuntu # The place where the mail goes. The actual machine name is required no # MX records are consulted. Commonly mailhosts are named mail.domain.com mailhub=smtp.remotemailserver.com # Where will the mail seem to come from? rewriteDomain=server.com # The full hostname hostname=dev.server.com # Are users allowed to set their own From: address? # YES — Allow the user to specify their own From: address # NO — Use the system generated From: address FromLineOverride=YES AuthUser=YOUR_MAIL_USER AuthPass=PASS UseSTARTTLS=YES |
$ sudo nano /etc/ssmtp/revaliases
12345678 | # sSMTP aliases # # Format: local_account:outgoing_address:mailhub # # Example: root:your_login@your.domain:mailhub.your.domain # where is an optional port number that defaults to 25. www-data:support@server.com:smtp.remotemailserver.com ubuntu:support@server.com:smtp.remotemailserver.com |
Правим php.ini
$ sudo nano /etc/php5/apache2/php.ini
Ищем параметр sendmail_path и прописываем в нем путь к ssmtp:
1 | sendmail_path = /usr/sbin/ssmtp -t |
либо /usr/sbin/sendmail -t
Так как sendmail это ссылка на ssmtp:
lrwxrwxrwx 1 root root 5 Jan 1 2012 /usr/sbin/sendmail -> ssmtp
Не разбирался зачем ключ -t (в мане написано, что он игнорируется ssmtp).
Делаем рестарт апача:
$ sudo service apache2 restart
Код проверки (PHP)
123456789101112 | <?php $to = ‘myaddress@gmail.com’; $subject = ‘Test Email’; $message = ‘Hello Igor’; $headers = ‘From: Support Team <support@server.com>’ . «\r\n» . ‘Reply-To: support@server.com’ . «\r\n» . ‘MIME-Version: 1.0’ . «\r\n» . ‘Content-Type: text/html; charset=utf-8’ . «\r\n» . ‘Content-Transfer-Encoding: quoted-printable’; mail($to, $subject, $message, $headers); ?> |
То есть создаем файл с расширением PHP, например, testmail.php запускаем его из командной строки:
$ php testmail.php
Письмо пришло.
Но из нашего веб приложения письма уходить отказались. 🙁 Смотрел логи, апача, почты, но все свелось к тому, что пришлось все удалить и настроить postfix. С ним все заработало как нужно. По настройке Postfix также нужно будет сделать себе закладочку на всякий случай…
Спасибо за то что поделились ссылкой! | |||
Теги: ПочтаРубрика: Закладки | (RSS)
Как настроить подключение SMTP
Чтобы настроить нормальную отправку писем, нужно установить плагин WP Mail SMTP. Он позволяет переконфигурировать стандартный PHP Mailer так, чтобы была возможность подключаться к SMTP серверу. Также, советую использовать его, если вы пользуетесь локальным сервером.
Настройка WP Mail SMTP
А вот описание опций
- From Email — email отправителя. Вводим логин от почты полностью как на изображении вверху
- From Name — Имя отправителя. Можете поставить сюда что хотите, например, адрес вашего сайта
- Mailer — выбираем
- Return Path — оставляем пустым
- SMTP Host — адрес SMTP сервера. Вводим
- SMTP Port — порт SMTP сервера. Вводим
- Шифрование— тип шифровки писем. Выбираем
- Авторизация— авторизация. Выбираем
- Username — логин от почты. Значение должно совпадать с From Email
- Password — пароль от почты
Бизнес модель сервиса Dropbox
SMTP с авторизацией по протоколу SSL. Майл
// пример использования require_once "SendMailSmtpClass.php"; // подключаем класс $mailSMTP = new SendMailSmtpClass('ipatovsoft@mail.ru', '****', 'ssl://smtp.mail.ru', 'Evgeniy', 465); // создаем экземпляр класса // $mailSMTP = new SendMailSmtpClass('логин', 'пароль', 'хост', 'имя отправителя'); // заголовок письма $headers= "MIME-Version: 1.0\r\n"; $headers .= "Content-type: text/html; charset=utf-8\r\n"; // кодировка письма $headers .= "From: Evgeniy <ipatovsoft@mail.ru>\r\n"; // от кого письмо !!! тут e-mail, через который происходит авторизация $result = $mailSMTP->send('zhenikipatov@yandex.ru', 'Тема письма', 'Текст письма', $headers); // отправляем письмо // $result = $mailSMTP->send('Кому письмо', 'Тема письма', 'Текст письма', 'Заголовки письма'); if($result === true){ echo "Письмо успешно отправлено"; }else{ echo "Письмо не отправлено. Ошибка: " . $result; }
Что это такое
Mail применяется для отправки сообщений при условии что будут выполняться некоторые правила. Самое главное — эта функция не подходит для пересылки большого числа писем. Потому что после каждой отправки она закрывает, а потом опять открывает соединение с почтовым сервером. Это приведет к перерасходу мощностей на хостинге.
Настройка функции происходит в конфигурационном файле php.ini. В нем прописывают путь к лог-файлам, задают значение порта и так далее.
Mail принимает пять аргументов из которых три — обязательные:
- Адрес отправителя;
- Тайтл письма;
- Текст сообщения.
Например, напишем такие строки кода
<?php mail("test@yandex.ru", "Заголовок", "Текст сообщения"); ?> |
Если вы пользуетесь Денвером, то информация, которую вы отправили, сохранится на виртуальном диске Z папке «tmp\!sendmail». Если вы забыли, как установить данный локальный сервер, то советую почитать статью «Как быстро установить Denver».
Помещаем HTML и PHP код отправки формы в один файл
Для реализации такой работы нужно поместить HTML код формы в файл send.php и добавить условие, которое будет проверять наличие переменных в массиве POST (этот массив передается из формы). То есть, если переменные в массиве не существуют, то нужно показать пользователю форму. Иначе нужно принять данные из массива и отправить их адресату.
Давайте посмотрим как изменить PHP код в файле send.php:
Существование переменной в POST массиве мы проверяем PHP функцией isset(). Восклицательный знак перед этой функцией в условии означает отрицание. То есть, если переменной не существует, то нужно показать нашу форму. Если бы я не поставил восклицательный знак, то условие дословно означало бы — «если существует, то показать форму». А это неправильно в нашем случае. Естественно, что вы можете переименовать его в index.php. Если будуту переименовывать файл, то не забудьте переименовать название файла и в строке <form action=»send.php» method=»post»>. Форма должна ссылаться на эту же страницу, например index.php. В код я добавил заголовок страницы.
Отправка с вложением
Давайте посмотрим, как отсылать сообщения, включающие в себя прикреплённый файл. Воспользуемся для этого функцией sendMailAttachment():
<? $file = "./files/test.txt"; // прописывается путь к файлу, который следует отправить $mailTo = "test@gmail.com"; // адрес отправителя $from = "test@files.com"; // от кого письмо $subject = "Test file"; // тема $message = "Текст с вложением"; // содержимое письма $r = sendMailAttachment($mailTo, $from, $subject, $message, $file); // отправка письма c вложением echo ($r)?Отправлено':'Ошибка. Не отправлено!'; //$r = sendMailAttachment($mailTo, $from, $subject, $message); // отправка без вложения //echo ($r)?Отправлено''Ошибка. Не отправлено!'; ?>
Как видите, работа функции mail в PHP совсем несложна. При этом мы рассмотрели лишь наиболее распространённые ошибки, возникающие при её реализации. Впрочем, повысить свои навыки PHP-программирования вы всегда сможете на наших курсах.
Отправка почты php через SMTP-настройка скрипта
Шаблон простенького скрипта который можно скопировать чуть ниже, или скачать еще на сотнях подобных сайтов, необходимо отредактировать.
<?php mail('to', 'subject', 'message'); ?>
Для начала нужно поменять в шаблоне скрипта некоторые значения.to — меняем на почтовый адрес куда будет отправлено почтовое сообщение.subject — тема письмаmessage — само сообщение, или тело письма.
Пример моего скрипта:
<?php mail('bunakov@mail.ru', 'Тема письма', 'Отправка почты через локальный сервер openserver'); ?>
Можно конечно немного расширить функционал и сделать так, чтобы скрипт выдавал сообщение об отправки почты. Хоть на самом деле отправку производит именно SMTP-сервер, а скрипт лишь формирует сообщение.
Для примера можно написать так:
<?php if(mail('bunakov@mail.ru', 'Тема письма', 'Отправка почты через локальный сервер openserver') ) {echo'Письмо успешно отправлено'; }else{echo 'Ошибка';} ?>
Все подставленные значения должны быть в кавычках, иначе скрипт выдаст ошибку. После этого можно сохранить скрипт в папку локального сервера.
Например: domains/send/index.php и приступать к настройке отправки почты через SMTP opensrerver.
Windows 7 запускается, но показывает только черный экран и указатель мыши
Функция mail()
Отправка почтовых сообщений в большинстве скриптов выполняется системной функцией . Описание синтаксиса функции mail всегда можно найти в оригинальном руководстве. Эта функция принимает всего 5 параметров, из которых три являются обязательными, а остальные два — опциональными:
- — Электронный адрес получателя сообщения
- — Тема сообщения
- — Тело сообщения
- — дополнительные заголовки
- — дополнительные параметры
На самом деле функция просто формирует строку следующего вида:
а затем передает ее на обработку стандартной UNIX’овой команде отправки почты, которая носит имя . Сравнивая то, что выдает , с тем, что должно получиться (см. пример выше), можно составить точный план подготовки переменных для передачи в функцию:
- Закодировать поле Subject с использованием base64, как в примере выше.
- Закодировать поле To.
- В случае необходимости создать , самостоятельно сформировав все необходимые заголовки (например, добавив поле «From:») и разделив эти заголовки парой символов «\r\n».
После этого сформированный набор параметров можно передавать на вход функции mail().
Simple Mail Transmission Protocol (SMTP)
On a hosted server, the SMTP settings would have already been set.
The SMTP mail settings can be configured from “php.ini” file in the PHP installation folder.
Configuring SMTP settings on your localhost Assuming you are using xampp on windows, locate the “php.ini” in the directory “C:\xampp\php”.
Open it using notepad or any text editor. We will use notepad in this example. Click on the edit menu
Click on Find… menu
The find dialog menu will appear
Click on Find Next button
- Locate the entries
- ; XAMPP: Don’t remove the semi column if you want to work with an SMTP Server like Mercury
- ; SMTP = localhost
- ; smtp_port = 25
- Remove the semi colons before SMTP and smtp_port and set the SMTP to your smtp server and the port to your smtp port. Your settings should look as follows
- SMTP = smtp.example.com
- smtp_port = 25
- Note the SMTP settings can be gotten from your web hosting providers.
- If the server requires authentication, then add the following lines.
- auth_username = This email address is being protected from spambots. You need JavaScript enabled to view it.
- auth_password = example_password
- Save the new changes.
- Restart Apache server.
Php Mail Example
<?php $to_email = 'name @ company . com'; $subject = 'Testing PHP Mail'; $message = 'This mail is sent using the PHP mail function'; $headers = 'From: noreply @ company . com'; mail($to_email,$subject,$message,$headers); ?>
Output:
Note: the above example only takes the 4 mandatory parameters.
Отправка писем через SMTP с помощью PHPMailer на примере Yandex и Google
Можно так же отправить письмо через другой почтовик, например, через Яндекс. Код будет выглядеть примерно так:
// Подключаем библиотеку PHPMailer use PHPMailer\PHPMailer\PHPMailer; use PHPMailer\PHPMailer\SMTP; require 'PHPMailer/PHPMailer.php'; require 'PHPMailer/SMTP.php'; // Создаем письмо $mail = new PHPMailer(); $mail->isSMTP(); // Отправка через SMTP $mail->Host = 'smtp.yandex.ru'; // Адрес SMTP сервера $mail->SMTPAuth = true; // Enable SMTP authentication $mail->Username = 'login'; // ваше имя пользователя (без домена и @) $mail->Password = 'password'; // ваш пароль $mail->SMTPSecure = 'ssl'; // шифрование ssl $mail->Port = 465; // порт подключения $mail->setFrom('login@ya.ru', 'Иван Иванов'); // от кого $mail->addAddress('test@ya.ru', 'Вася Петров'); // кому $mail->Subject = 'Тест'; $mail->msgHTML("<html><body> <h1>Здравствуйте!</h1> <p>Это тестовое письмо.</p> </html></body>"); // Отправляем if ($mail->send()) { echo 'Письмо отправлено!'; } else { echo 'Ошибка: ' . $mail->ErrorInfo; }
Отправка писем через Google имеет один нюанс: нужно в аккаунте google разрешить доступ ненадежным приложениям. Для этого нужно зайти в свой аккаунт https://myaccount.google.com, перейти в безопасность, зайти в раздел «Ненадежные приложения, у которых есть доступ к аккаунту» и там переключить в «Разрешено». На момент написания статьи это страница https://myaccount.google.com/u/0/lesssecureapps.
Дальше в php-программе отправка писем через PHPMailer происходит аналогично как через yandex, нужно только заменить настройки SMTP так:
$mail->Host = 'smtp.gmail.com'; // Адрес SMTP сервера $mail->SMTPAuth = true; // Enable SMTP authentication $mail->Username = 'login'; // ваше имя пользователя $mail->Password = 'password'; // ваш пароль $mail->SMTPSecure = 'ssl'; // шифрование ssl $mail->Port = 465; // порт подключения
Если первый раз запускаете программу отправки через smtp, тогда желательно перед отправкой дополнительно использовать $mail->SMTPDebug = 1; чтобы получать все сообщения клиента и smtp-сервера, т.е. на экран выведется весь процесс подключения, авторизации и т.д., что очень полезно для отладки вашей программы.
Защита от спама
Спамеры очень часто для рассылки используют плохо написанные формы отправки почты на PHP. Дело в том, что стандарт допускает использование нескольких получателей, которые могут быть перечислены через запятую в заголовке «To», а также использование произвольного количества специальных заголовков с именем «Сс» (копия) и «Bcc» (скрытая копия). Предположим, что в Вашей форме есть поле темы, которое без изменений транслируется в заголовок «Subject». Для того чтобы отправить произвольное сообщение на тысячу адресов, спамеру достаточно в поле Subject вписать примерно такой текст:
Таким образом отправляемое письмо будет дополнено заголовками «Cc» и почтовая программа, обнаружив все эти заголовки в тексте письма, примется рассылать его всем получателям из списка. Аналогичная ситуация и с переменными и — любое из них при удачном стечении обстоятельств может быть использовано злоумышленниками в своих интересах.
Борьба с этим явлением может вестись двумя способами:
-
Проверка всего пользовательского ввода и фильтрация опасных символов (т.е символов «\r» и «\n»). Эти символы нужно либо заменять на пробелы, либо отказываться обрабатывать некорректно введенные параметры. Например, замену можно выполнить так:
-
Выполнение кодирования Base64, помимо прочего, защищает и от спамеров, т.к. «вытягивает» закодированный текст в одну строку.
Почему Windows 10 выходит из сна, как устранить такую самостоятельность
В первую очередь (логично) узнать кто или что являлось причиной включения ноутбука/компьютера. Об этом можно узнать, есть открыть журналы Windows (современная ОС многие свои действия записывает в журнал, в том числе, время включения/выключения).
И так, чтобы открыть этот журнал, необходимо сначала зайти в панель управления Windows в раздел «Система и безопасность», далее перейти во вкладку «Администрирование» (см. скрин ниже ).
Система и безопасность, Администрирование
После чего открыть ссылку «Просмотр событий».
Просмотр событий (во вкладке администрирование)
Здесь нужно в меню слева выбрать «Журналы Windows/Система».
Далее перед вами должны предстать сотни событий (по умолчанию они отсортированы по дате появления)
Нам нужно посмотреть те, в графе которых «Источник» содержится причина «Power-Troubleshooter» (также обратите внимание на время выхода. Благодаря этому, сможете найти нужное событие)
Когда откроете событие — увидите источник выхода. По сути, это и есть причина, почему ваш ноутбук/ПК пробудился.
Источник выхода — расширяемый хост-контроллер Intel(R) USB 3.0
Например, если в источнике выхода содержится «Кнопка питания» — значит кто-то вывел ноутбук из режима сна с помощью этой кнопки.
Еще один пример // Источник выхода — кнопка питания
Возможные варианты в источнике выхода:
- кнопка питания — под это иногда подпадает не только непосредственно сама кнопка, но и открытие/закрытие крышки ноутбука. Добавлю, что возможно сбои в тех случаях, когда у вас проблема с мат. платой или с самой кнопкой;
- устройство, название которого содержит «HID» — это либо мышка, либо клавиатура, либо еще что-то подобное (джойстик, например). Отмечу, что часто эти устройства могут срабатывать «автоматически»: хватит даже совсем небольшой вибрации вашей мышки (например, если положите что-то на стол с ней);
- таймеры — обычно подобное происходит, если у вас в планировщике заданий установлена какая-то задача (например, обновить систему!);
- сетевой адаптер — этот источник выхода говорит о том, что ваш адаптер настроен так, чтобы ПК пробуждался при подключениях к нему;
- хост-контроллеры (вариантов названий может быть много) — причина обычно в подключенных устройствах к USB портам;
- нет данных — самый неприятный источник выхода, который также встречается в журнале. В этом случае порекомендую все равно проделать нижеперечисленные рекомендации (в большинстве случаев помогает решить проблему).
Как найти и запретить устройствам выходить из режима сна
Для того, чтобы увидеть все устройства, которым разрешено будить ноутбук/компьютер, откройте командную строку (нажмите сочетание Win+R, введите команду cmd и нажмите Enter).
В командной строке введите одну команду: powercfg -devicequery wake_armed
В моем случае нашлось одно оборудование — HID-совместимая мышь.
HID-совместимая мышь будит ПК
Далее нужно открыть диспетчер устройств (Win+R, затем команду devmgmt.msc).
В диспетчере устройств найдите то устройство, которому хотите запретить пробуждать ПК (в моем случае HID-совместимая мышь). Щелкните по нему правой кнопкой мышки и выберите свойства.
Свойства HID-совместимой мышки // Диспетчер устройств
В свойствах во вкладке «Управление электропитанием» снимите галочку с разрешения выводить компьютер из ждущего режима. Сохраните настройки, и на этом, вообще-то всё, дальше можно пользоваться компьютером спокойно…
Снимаем галочку с разрешения будить
Добавлю, если у вас несколько устройств — можете поочередно также запретить им всем выводить ПК/ноутбук из ждущего (спящего) режима. Тогда в итоге вы сможете сделать так, что ваш ноутбук будет выходить из него только с помощью кнопки питания.
Как отключить таймеры пробуждения (чтобы никакое обновление или проверка не могла включить ПК)
Для этого необходимо зайти в настройки электропитания (панель управления, затем раздел «Оборудование и звук/Электропитание /Настройки схемы электропитания (текущей схемы!)»).
Далее откройте дополнительные настройки электропитания (см. скрин ниже).
Изменить доп. параметры питания
В них необходимо открыть вкладку «Сон/Разрешить таймеры пробуждения» и поставить значения «Отключить» (см. скрин ниже ). Сохраните настройки и перезагрузите ПК.
Отключаем таймеры пробуждения
Теперь при уходе в спящий режим — никакой планировщик заданий не должен будить ваше устройство!
Также, на всякий случай, откройте панель управления Windows по следующему адресу:
Проверьте, не стоит ли там галочка, разрешающая пробуждать ПК на автоматическое обслуживание в запланированное время (снимите ее, если эта опция у вас включена).
Автоматическое обслуживание
Кстати, поздравляю всех с 23 февраля!
На этом пока всё. Всем всего хорошего!
Первая публикация: 23.02.2018
Корректировка: 5.06.2020
Sanitizing email user inputs
Let’s assume you have to create a contact us form for users fill in the details and then submit.
- Users can accidently or intentional inject code in the headers which can result in sending spam mail
- To protect your system from such attacks, you can create a custom function that sanitizes and validates the values before the mail is sent.
Filter_var function The filter_var function is used to sanitize and validate the user input data.
It has the following basic syntax.
<?php filter_var($field, SANITIZATION TYPE); ?>
HERE,
- “filter_var(…)” is the validation and sanitization function
- “$field” is the value of the field to be filtered.
- “SANITIZATION TYPE” is the type of sanitization to be performed on the field such as;
- FILTER_VALIDATE_EMAIL – it returns true for valid email addresses and false for invalid email addresses.
- FILTER_SANITIZE_EMAIL – it removes illegal characters from email addresses. info\@domain.(com) returns This email address is being protected from spambots. You need JavaScript enabled to view it..
- FILTER_SANITIZE_URL – it removes illegal characters from URLs. http://www.example@.comé returns >http://www.example@.com
- FILTER_SANITIZE_STRING — it removes tags from string values. <b>am bold</b> becomes am bold.
<?php function sanitize_my_email($field) { $field = filter_var($field, FILTER_SANITIZE_EMAIL); if (filter_var($field, FILTER_VALIDATE_EMAIL)) { return true; } else { return false; } } $to_email = 'name @ company . com'; $subject = 'Testing PHP Mail'; $message = 'This mail is sent using the PHP mail '; $headers = 'From: noreply @ company. com'; //check if the email address is invalid $secure_check $secure_check = sanitize_my_email($to_email); if ($secure_check == false) { echo "Invalid input"; } else { //send email mail($to_email, $subject, $message, $headers); echo "This email is sent using PHP Mail"; } ?>
Output:
Отправка почты через smtp яндекса
Почта будет приходить на любой адрес, который будет указан в скрипте вместо значения ‘to’, но обрабатывать и отправлять эту почту будет именно тот SMTP, который будет указан в настройках openserver.
- Запускаем сервер
- Открываем модуль openserver с настройками в меню «почта»
- Заполняем все поля как показано на картинке, при этом, имя пользователя, e-mail отправителя и пароль подставляем от реального почтового ящика на яндексе.
Сохраняем настройки и после того, как сервер будет перезапущен, можно обратиться к самому скрипту. Из папки «Мои сайты», открыть папку «send» в которой и находится сохраненный ранее скрипт index.php.
К стати, данный скрипт можно сохранить под любым именем, главное чтобы расширение скрипта было «php»
Как только произойдет обращение к данному скрипту, в новом окне браузера появится информация о том, что скрипт отработал.
После этого стоит проверить свой почтовый ящик, адрес которого был указан в скрипте, пришло ли письмо.
Если его нет, значит что-то настроено не правильно, либо письмо попало в папку спам.
Все остальные настройки выглядят аналогично, но на всякий случай дополнительная информация не помешает.
Отправка почты через smtp mail ru
Для того, чтобы настроить отправку почты через SMTP mail ru, необходимо просто заменить параметры яндекса на параметры mail ru.
А чтобы не перестраивать каждый раз локальные сервер, лучше всего настроить разные профили openserver. Как это сделать показано в видеоуроке Openserver настройка php с помощью профилей.
В этом случае достаточно будет просто загрузить профиль и все настройки, которые были указаны для данного профиля будут доступны после перезапуска сервера. Очень удобная штука и работает очень просто.
Для каждого профиля (совсем не важно как он будет называться), должны быть сделаны свои настройки, если конечно планируется использование разных по своим параметрам скриптов, cms-систем и приложений. Если нет, то можно обойтись и настройками по умолчанию
Что касается SMTP mail ru, то здесь все эдентично.
Меняются данные яндекса на данные mail ru