Как настроить WAMP (localhost) для отправки электронной почты с помощью Gmail?

Я хочу использовать функцию mail () со своего локального хоста. У меня установлен WAMP и учетная запись Gmail. Я знаю, что SMTP для Gmail - это smtp.gmail.com, а порт - 465 ( дополнительная информация из Gmail ). Что мне нужно настроить в WAMP, чтобы я мог использовать функцию mail ()?

Спасибо!!

Ответов (9)

Решение

Серверы Gmail используют аутентификацию SMTP с использованием SSL или TLS. Я думаю, что в таких mail() обстоятельствах нет возможности использовать эту функцию, поэтому вы можете проверить эти альтернативы:

Все они поддерживают аутентификацию SMTP под SSL.

Вам нужно будет включить php_openssl расширение в вашем php.ini.

Дополнительные ресурсы:

Я уверен, что для этого также потребуются учетные данные для аутентификации SMTP.

В качестве альтернативы PHPMailer, Pear's Mail и другим вы можете использовать библиотеку Zend.

  $config = array('auth' => 'login',
                   'ssl' => 'ssl',
                   'port'=> 465,
                   'username' => '[email protected]',
                   'password' => 'XXXXXXX');

 $transport = new Zend_Mail_Transport_Smtp('smtp.gmail.com', $config);
 $mail = new Zend_Mail();
 $mail->setBodyText('This is the text of the mail.');
 $mail->setFrom('[email protected]', 'Some Sender');
 $mail->addTo('[email protected]', 'Some Recipient');
 $mail->setSubject('TestSubj');
 $mail->send($transport); 

Это моя настройка на сервере localhost, и я могу видеть входящую почту на свой почтовый ящик.

Все очень просто. (Адаптируйте синтаксис для вашего удобства)

public $smtp = array(
    'transport' => 'Smtp',
    'from' => '[email protected]',
    'host' => 'ssl://smtp.gmail.com',
    'port' => 465,
    'timeout' => 30,
    'username' => '[email protected]',
    'password' => '*****'
)

Я ответил на это здесь: (WAMP / XAMP) отправлять почту с использованием SMTP localhost (работает не только GMAIL, но и для других).

Я знаю, что в XAMPP я могу настроить sendmail.ini для пересылки локальной электронной почты. нужно установить

smtp_sever
smtp_port
auth_username
auth_password

это работает при использовании моего собственного сервера, а не Gmail, поэтому не могу сказать наверняка, что у вас не будет проблем

Если вы откроете файл php.ini в wamp, вы найдете эти две строки:

smtp_server
smtp_port

Добавьте сервер и номер порта для вашего хоста (возможно, вам потребуется связаться с ними для получения подробной информации)

Следующие две строки не существуют:

auth_username
auth_password

Поэтому вам нужно будет добавить их, чтобы иметь возможность отправлять почту с сервера, требующего аутентификации. Итак, примером может быть:

smtp_server = mail.example.com
smtp_port = 26
auth_username = [email protected]
auth_password = example_password

используйте stunnel на вашем сервере, чтобы отправить через Gmail. поищи в Гугле.

ГРУША: Почта работала для меня, отправляя сообщения электронной почты из Gmail. Также очень помогли инструкции: Как отправить электронное письмо из PHP-скрипта с использованием SMTP-аутентификации (с использованием PEAR :: Mail). Спасибо, CMS!