Настроить рабочий почтовый клиент с localhost - довольно сложная задача, я потратил на это несколько часов разочарования. Я уверен, что кто-то более опытный сможет помочь, или они, возможно, согласятся со мной.
Если вы просто хотите протестировать, вот отличный инструмент для локального тестирования почты, который почти не требует настройки:
Работает с wamp без какой-либо конфигурации. Просто откройте .eml с живой почтой Windows (конфигурация не требуется).
Benjamin Crouzier
5
Если (как и я) вы пришли к этому отличному решению после настройки php.ini, запомните конфигурацию по умолчанию: [почтовая функция] SMTP = localhost smtp_port = 25
BenL
2
У меня блестяще сработало использование WAMP 4 на Win10. Спасибо, Уэсли!
+1 за решение под ключ. В качестве дополнительного ресурса для тех, кому нужно немного больше подробностей о шагах: blog.techwheels.net/…
Prusprus
@gianjey Будет ли это работать с другими учетными записями, такими как Hotmail, или вам нужна учетная запись Gmail, зарегистрированная для этого?
Райман Холмс
1
черт возьми, этот метод, похоже, больше не работает ... при условии, что я все настроил правильно
Banning
Привет, @Banning, я только что смог без труда настроить это, так что оно все еще работает. Убедитесь, что в учетной записи GMail не настроена двухэтапная аутентификация. В любом случае, это было хорошее руководство - blog.techwheels.net/…
faludi
1
Не могу поверить, что это сработало с первой попытки !!! так невероятно. Единственная часть, которая меня запутала, это то, что если вы используете Gmail, вам нужно ввести свое имя пользователя и пароль Gmail, чтобы он мог войти в почтовый клиент, чтобы ОТПРАВИТЬ письмо. ПРИМЕЧАНИЕ: если вы собираетесь это сделать, создайте новую учетную запись Gmail, поскольку это увеличивает риск угрозы безопасности.
Уильям Хоули,
5
Используя вызов программы с открытым исходным кодом Send Mail , вы можете довольно легко отправить через wamp. Я все еще настраиваю его, но вот отличное руководство от jo jordan . Настройка занимает менее 2 минут.
Просто попробовал, и это сработало как шарм! Как только я раскомментировал журнал ошибок и обнаружил, что он останавливается на аутентификации pop3, я просто удалил его, и он был отправлен правильно. Удачи!
Если вы используете учетную запись Gmail, вам необходимо разрешить доступ для менее безопасных приложений. Для этого, когда вы сделаете то, что говорится в учебнике, ссылка на который приведена в этом ответе, и откроете страницу PHP с помощью mail, вы получите электронное письмо от Google о том, что попытка входа в систему была заблокирована. В этом письме нажмите «Проверить активность», а на открывшейся странице нажмите «Да, это был я», затем нажмите «Узнать больше», затем нажмите «Если« Небезопасный доступ к приложениям »отключен для ваш аккаунт ", затем нажмите" включить снова ", а затем включите переключатель.
Дональд Дак
Кроме того, вы должны указать fromзаголовок при вызове mailв PHP. Например, можно mail("to@example.com", "Subject", "Content", "From: youremailaddress@gmail.com")(это последний важный параметр).
Дональд Дак
2
Для отправки почты вам нужен SMTP-сервер. Если у вас есть такой, который не требует аутентификации SMTP (может быть, у вашего интернет-провайдера?), Просто отредактируйте параметр «SMTP» ([функция почты]) в файле php.ini.
Если это не вариант, потому что ваш SMTP-сервер требует аутентификации, вы не сможете использовать внутреннюю функцию mail (), и вам придется использовать какой-то сторонний класс, который поддерживает smtp auth. например http://pear.php.net/package/Mail/
Для настройки это просто, как Test Mail Server Tool (практически без конфигурирования), а также он служит в качестве почтового клиента с представлениями для сообщений (отлично подходит для электронных писем HTML), заголовков , тела (для проверки HTML) и Raw (полный неанализируемое письмо).
Он также имеет представление « Разделы» , чтобы разделить различные типы мультимедиа в электронном письме.
Он имеет супер чистый и дружелюбный интерфейс, хороший просмотрщик журналов и дает вам уведомления, когда вы получаете электронное письмо.
Я считаю его идеальным, поэтому я просто хотел отдать свои 2с и, возможно, кому-то помочь.
Sendmail у меня не работал, поэтому я использовал msmtp 1.6.2 w32, и большинство из них просто следовало инструкциям на DeveloperSide . Вот краткое изложение установки для потомков:
Включен доступ по протоколу IMAP под вашей учетной записью Gmail (с которого msmtp отправляет электронные письма)
Разрешите доступ для менее безопасных приложений . Войдите в свою учетную запись google и перейдите сюда
Отредактируйтеphp.ini , найдите и измените каждый параметр ниже, чтобы отразить следующее:
;These are commented outby prefixing a semicolon
;SMTP = localhost
;smtp_port =25;Set these paths to where you put your msmtp files.; I used backslashes in php.ini and it works fine.;The example in the devside guide uses forwardslashes.
sendmail_path ="C:\wamp64\msmtp\msmtp.exe -d -C C:\wamp64\msmtp\msmtprc.ini -t --read-envelope-from"
mail.log ="C:\wamp64\msmtp\maillog.txt"
Создайте и отредактируйте файлmsmtprc.ini в том же каталоге, что и ваш msmtp.exeфайл, как показано ниже, заменив его своим адресом электронной почты и паролем:
# Default values for all accounts
defaults
tls_certcheck off
# I used forward slashes here and it works.
logfile C:/wamp64/msmtp/msmtplog.txt
account Gmail
host smtp.gmail.com
port 587
auth on
tls on
fromReplaceWithYourEmail@gmail.com
user ReplaceWithYourEmail@gmail.com
password ReplaceWithYourPassword
account default: gmail
Я использовал Mercury / 32 и Pegasus Mail для работы mail (). Он также отлично работает в качестве почтового сервера, если вам нужен адрес электронной почты, заканчивающийся вашим доменным именем.
Ответы:
Настроить рабочий почтовый клиент с localhost - довольно сложная задача, я потратил на это несколько часов разочарования. Я уверен, что кто-то более опытный сможет помочь, или они, возможно, согласятся со мной.
Если вы просто хотите протестировать, вот отличный инструмент для локального тестирования почты, который почти не требует настройки:
http://www.toolheap.com/test-mail-server-tool/
У меня это сработало сразу, надеюсь, это вам поможет.
источник
Установите Fake Sendmail (загрузите sendmail.zip ). Затем настройте C: \ wamp \ sendmail \ sendmail.ini:
Вышеупомянутое будет работать с учетной записью Gmail. А затем настройте php.ini:
Теперь перезапустите Apache, и это практически все, что вам нужно сделать.
источник
Используя вызов программы с открытым исходным кодом Send Mail , вы можете довольно легко отправить через wamp. Я все еще настраиваю его, но вот отличное руководство от jo jordan . Настройка занимает менее 2 минут.
Просто попробовал, и это сработало как шарм! Как только я раскомментировал журнал ошибок и обнаружил, что он останавливается на аутентификации pop3, я просто удалил его, и он был отправлен правильно. Удачи!
источник
mail
, вы получите электронное письмо от Google о том, что попытка входа в систему была заблокирована. В этом письме нажмите «Проверить активность», а на открывшейся странице нажмите «Да, это был я», затем нажмите «Узнать больше», затем нажмите «Если« Небезопасный доступ к приложениям »отключен для ваш аккаунт ", затем нажмите" включить снова ", а затем включите переключатель.from
заголовок при вызовеmail
в PHP. Например, можноmail("to@example.com", "Subject", "Content", "From: youremailaddress@gmail.com")
(это последний важный параметр).Для отправки почты вам нужен SMTP-сервер. Если у вас есть такой, который не требует аутентификации SMTP (может быть, у вашего интернет-провайдера?), Просто отредактируйте параметр «SMTP» ([функция почты]) в файле php.ini.
Если это не вариант, потому что ваш SMTP-сервер требует аутентификации, вы не сможете использовать внутреннюю функцию mail (), и вам придется использовать какой-то сторонний класс, который поддерживает smtp auth. например http://pear.php.net/package/Mail/
источник
Я попробовал Test Mail Server Tool, и, хотя он отлично работал, вам все равно нужно открыть электронную почту на каком-то клиенте.
Я нашел Papercut : https://papercut.codeplex.com/
Для настройки это просто, как Test Mail Server Tool (практически без конфигурирования), а также он служит в качестве почтового клиента с представлениями для сообщений (отлично подходит для электронных писем HTML), заголовков , тела (для проверки HTML) и Raw (полный неанализируемое письмо).
Он также имеет представление « Разделы» , чтобы разделить различные типы мультимедиа в электронном письме.
Он имеет супер чистый и дружелюбный интерфейс, хороший просмотрщик журналов и дает вам уведомления, когда вы получаете электронное письмо.
Я считаю его идеальным, поэтому я просто хотел отдать свои 2с и, возможно, кому-то помочь.
источник
Sendmail у меня не работал, поэтому я использовал msmtp 1.6.2 w32, и большинство из них просто следовало инструкциям на DeveloperSide . Вот краткое изложение установки для потомков:
Включен доступ по протоколу IMAP под вашей учетной записью Gmail (с которого msmtp отправляет электронные письма)
Разрешите доступ для менее безопасных приложений . Войдите в свою учетную запись google и перейдите сюда
Отредактируйте
php.ini
, найдите и измените каждый параметр ниже, чтобы отразить следующее:Создайте и отредактируйте файл
msmtprc.ini
в том же каталоге, что и вашmsmtp.exe
файл, как показано ниже, заменив его своим адресом электронной почты и паролем:источник
msmtp-1.6.2-w32.zip
sourceforge.net/projects/msmtp/files/msmtp/1.6.2Я использовал Mercury / 32 и Pegasus Mail для работы mail (). Он также отлично работает в качестве почтового сервера, если вам нужен адрес электронной почты, заканчивающийся вашим доменным именем.
источник