Есть ли способ, которым я могу настроить сервер WAMP для PHP, чтобы включить функцию mail()
?
Настройка рабочего почтового клиента с локального хоста довольно сложная задача, я потратил на это много времени на фрустрацию. Я уверен, что кто-то более опытный может помочь, или они, возможно, согласятся со мной.
Если вы просто хотите протестировать, вот отличный инструмент для проверки почты на локальном компьютере, который почти не требует настройки:
http://www.toolheap.com/test-mail-server-tool/
Он работал сразу с места в карьер, надеюсь, это поможет вам.
Установите Fake Sendmail (скачайте sendmail.zip ). Затем настройте C: \ wamp \ sendmail \ sendmail.ini:
smtp_server=smtp.gmail.com smtp_port=465 auth_username=user@gmail.com auth_password=your_password
Вышеуказанное будет работать против учетной записи Gmail. А затем настройте php.ini:
sendmail_path = "C:\wamp\sendmail\sendmail.exe -t"
Теперь перезапустите Apache, и это в основном все, что вам нужно сделать.
Используя вызов с открытым исходным кодом « Отправить почту» , вы можете отправить через wamp довольно легко на самом деле. Я все еще настраиваю его, но вот отличный учебник от jo jordan . Требуется установка менее 2 минут.
Просто попробовал, и это сработало как шарм! Как только я раскомментировал журнал ошибок и узнал, что он останавливается на аутентификации поп3, я просто удалил это и отправил красиво. Удачи!
Для отправки почты вам нужен SMTP-сервер. Если у вас есть один доступный, который не требует аутентификации SMTP (возможно, у вашего интернет-провайдера?), Просто отредактируйте параметр «SMTP» ([mail function]) в файле 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 (pratically zero-conf), а также служит почтовым клиентом, с представлениями для сообщения (отлично подходит для электронных писем HTML), заголовками , телом (для проверки HTML) и Raw (полный unparsed email).
В нем также есть раздел «Разделы» , чтобы разделить различные типы носителей, найденные в письме.
У этого есть супер чистый и дружественный пользовательский интерфейс, хороший просмотрщик журнала и дает вам уведомления, когда вы получаете электронное письмо.
Я нахожу это совершенным, поэтому я просто хотел дать свой 2c и, возможно, помочь кому-то.
Sendmail не работал для меня, поэтому я использовал msmtp 1.6.2 w32, и большинство из них просто следовали инструкциям на DeveloperSide . Вот краткое изложение установки для потомков:
Включить доступ к IMAP под учетной записью Gmail (с одной почты msmtp отправляет сообщения электронной почты)
Включите доступ для менее безопасных приложений . Войдите в свою учетную запись google и перейдите сюда
Измените php.ini
, найдите и измените каждый параметр ниже, чтобы отобразить следующее:
; These are commented out by 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 -CC:\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 from ReplaceWithYourEmail@gmail.com user ReplaceWithYourEmail@gmail.com password ReplaceWithYourPassword account default : gmail
по# 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 from ReplaceWithYourEmail@gmail.com user ReplaceWithYourEmail@gmail.com password ReplaceWithYourPassword account default : gmail
Я использовал Mercury / 32 и Pegasus Mail, чтобы получить функцию mail (). Он отлично работает как почтовый сервер, если вам нужен адрес электронной почты, заканчивающийся вашим доменным именем.