Это сработало для меня:
easy_install --upgrade pip
Windows 10, Python 3.6
Вы должны настроить SMTP на своем сервере. Вы можете бесплатно использовать G Suite SMTP Google:
<?php
$mail = new PHPMailer(true);
// Send mail using Gmail
if($send_using_gmail){
$mail->IsSMTP(); // telling the class to use SMTP
$mail->SMTPAuth = true; // enable SMTP authentication
$mail->SMTPSecure = "ssl"; // sets the prefix to the servier
$mail->Host = "smtp.gmail.com"; // sets GMAIL as the SMTP server
$mail->Port = 465; // set the SMTP port for the GMAIL server
$mail->Username = "your-gmail-account@gmail.com"; // GMAIL username
$mail->Password = "your-gmail-password"; // GMAIL password
}
// Typical mail data
$mail->AddAddress($email, $name);
$mail->SetFrom($email_from, $name_from);
$mail->Subject = "My Subject";
$mail->Body = "Mail contents";
try{
$mail->Send();
echo "Success!";
} catch(Exception $e){
// Something went bad
echo "Fail :(";
}
?>
Подробнее о PHPMailer
здесь .
Для людей в окнах 8, если вы хотите это сделать, я бы действительно рекомендовал прочитать этот учебник, который я нашел: http://yogeshchaugule.com/blog/2013/configure-sendmail-wamp
Не написано мной, но после того, как я ударил головой в бетонную стену в течение 2,5 часов, не получив этого, чтобы работать с такими странными ошибками, как:
Наконец-то я нашел, что учебник был посвящен установке https://www.stunnel.org/downloads.html и конфигурация Stunnel. Наконец он работал.
output
, debug
и socket
из stunnel.conf, поскольку они выдавали ошибку. Upvoted.
– Special K.
23 June 2014 в 19:46
В XAMPP v3.2.1 для тестирования вы можете увидеть электронные письма, которые XAMPP отправляет в XAMPP / mailoutput. В моем случае в Windows 8 это не требовало дополнительной настройки и было простым решением для проверки электронной почты
c:\xampp\php\php.ini
, найдите [mail function]
и раскомментируйте строку, в которой упоминается mailtodisk.exe
. Остальные строки в этом разделе закомментированы, за исключением mail.add_x_header
.
– Tim Malone
10 May 2016 в 05:33
sendmail_path="C:\xampp\mailtodisk\mailtodisk.exe"
– Tim Malone
16 November 2016 в 22:46
, вы должны использовать Papercut это простое приложение для проверки отправки почты. и вам не нужно ничего настраивать.
Просто запустите его и попробуйте отправить тестовую почту:
test_sendmail.php
<?php
$to = "somebody@example.com";
$subject = "My subject";
$txt = "Hello world!";
$headers = "From: webmaster@example.com" . "\r\n" .
"CC: somebodyelse@example.com";
mail($to,$subject,$txt,$headers);
?>
, и вы увидите это:
Надеюсь, у вас будет хороший день. вы можете найти меня на Youtube для получения большего урока Piseth Sok
Cheer!
просто потратил более часа, пытаясь сделать эту работу. для всех, у кого есть те же проблемы со всеми предложениями, которые не работают: вы должны перезапустить Apache в своем интерфейсе XAMPP! просто перезапуск XAMPP не работает !!
Вы можете отправлять почту с localhost с помощью пакета sendmail, пакет sendmail встроен в XAMPP. Поэтому, если вы используете XAMPP, вы можете легко отправлять почту с localhost.
, например, вы можете настроить C:\xampp\php\php.ini
и c:\xampp\sendmail\sendmail.ini
для gmail для отправки почты.
в C:\xampp\php\php.ini
найдите extension=php_openssl.dll
и удалите точку с запятой в начале этой строки, чтобы заставить SSL работать в gmail для localhost.
в файле php.ini найти [mail function]
и изменить
SMTP=smtp.gmail.com
smtp_port=587
sendmail_from = my-gmail-id@gmail.com
sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t"
Теперь откройте C:\xampp\sendmail\sendmail.ini
. Замените весь существующий код в sendmail.ini следующим кодом
[sendmail]
smtp_server=smtp.gmail.com
smtp_port=587
error_logfile=error.log
debug_logfile=debug.log
auth_username=my-gmail-id@gmail.com
auth_password=my-gmail-password
force_sender=my-gmail-id@gmail.com
Теперь вы сделали !! создайте файл php с функцией почты и отправьте почту с localhost.
PS: не забывайте заменять my-gmail-id и my-gmail-пароль в приведенном выше коде. Кроме того, не забудьте удалить дубликаты ключей, если вы скопировали настройки сверху. Например, следующая строка комментария, если в файле php.ini есть файл sendmail_path: sendmail_path="C:\xampp\mailtodisk\mailtodisk.exe"
Также не забудьте перезапустить сервер с помощью панели управления XAMMP, чтобы изменения вступили в силу.
Для gmail проверьте https://support.google.com/accounts/answer/6010255 , чтобы разрешить доступ к менее защищенным приложениям.
Чтобы отправить письмо по Linux (с пакетом sendmail) через Gmail с localhost, пожалуйста, проверьте PHP + Ubuntu Отправьте электронное письмо с использованием формы gmail localhost .
Очень просто отправить электронные письма на локальный или локальный сервер
. Примечание. Я использую тестовое почтовое серверное программное обеспечение на Windows 7 64bit с установленным Xampp
Просто скачайте тестовый почтовый сервер инструмент и установить в соответствии с инструкцией, представленной на ее веб-сайте Test Mail Server Tool
Теперь вам нужно изменить только две строки в файле php.ini
[mail function]
и удалите запятую двоеточие, которая находится перед ;smtp = localhost
sendmail_path = "C:\xampp\mailtodisk\mailtodisk.exe"
Вам ничего не нужно менять else, но если вы все еще не получаете электронные письма, кроме проверки на SMTP port
, номер порта должен быть таким же.
Вышеуказанный метод предназначен для настроек по умолчанию, предоставляемых программным обеспечением Xampp.
Вы должны определить сервер SMTP
и порт для этого. Все, кроме отправки сообщений с живых хостов.
Это полезная ссылка относительно этого .
NB: Порт должен быть не использован. Пожалуйста, обратите внимание, что некоторые приложения, такие как
Skype
, используют порты по умолчанию и там, предотвращая отправку почты.