Я хочу использовать функцию mail () с моего localhost. У меня установлен WAMP и учетная запись Gmail. Я знаю, что SMTP для Gmail – это smtp.gmail.com, а порт – 465 ( больше информации из gmail ). Что мне нужно настроить в WAMP, чтобы я мог использовать функцию mail ()?
Благодаря!!
Серверы Gmail используют аутентификацию SMTP под SSL или TLS. Я думаю, что нет возможности использовать функцию mail()
в этих обстоятельствах, поэтому вы можете проверить эти альтернативы:
Все они поддерживают протокол SMTP под SSL.
Вам нужно включить расширение php_openssl
в php.ini.
Дополнительные ресурсы:
PEAR::Mail
) Nette\Mail
[Использование hMailServer ]
После установки вам понадобится следующая конфигурация для правильной отправки почты с сервера wampserver:
1) When you first open hMailServer Administrator, you need to add a new domain. 2) Click on the "Add Domain ..." button at the Welcome page. 3) Under the domain text field, enter your computer's IP, in this case it should be 127.0.0.1. 4) Click on the Save button. 5) Go to Settings>Protocols>SMTP and select "Delivery of Email" tab 6) Enter "localhost" in the localhost name field. 7) Click on the Save button.
Если вам нужно отправить почту с помощью адресата FROM другого компьютера, вам необходимо разрешить доставку из внешних внешних учетных записей. Для этого выполните следующие действия:
1) Go to Settings>Advanced>IP Ranges and double click on "My Computer" which should have IP address of 127.0.0.1 2) Check the Allow Deliveries from External to External accounts checkbox. 3) Save settings using Save button.
(Тем не менее, Windows Live / Hotmail отклонила все электронные письма, поступающие с динамических IP-адресов, которые используются большинством домашних компьютеров. Обходным путем является использование учетной записи Gmail)
1) Go to Settings>Protocols>SMTP and select "Delivery of Email" tab 2) Enter "smtp.gmail.com" in the Remote Host name field. 3) Enter "465" as the port number 4) Check "Server requires authentication" 5) Enter gmail address in the Username 6) Enter gmail password in the password 7) Check "Use SSL"
(Примечание. Поле «От» не работает с gmail)
* ps в редких случаях, может потребоваться отменить все, что require SMTP authentication
:
Если вы откроете файл php.ini в wamp, вы найдете следующие две строки:
smtp_server smtp_port
Добавьте сервер и номер порта для вашего хоста (вам может потребоваться связаться с ними для получения дополнительной информации)
Следующие две строки не существуют:
auth_username auth_password
Поэтому вам нужно будет добавить их, чтобы отправлять почту с сервера, для которого требуется аутентификация. Таким образом, пример может быть:
smtp_server = mail.example.com smtp_port = 26 auth_username = example_username@example.com auth_password = example_password
Я знаю, что в XAMPP я могу настроить sendmail.ini для пересылки локальной электронной почты. необходимо установить
smtp_sever smtp_port auth_username auth_password
это работает при использовании моего собственного сервера, а не gmail, поэтому не могу сказать наверняка, что у вас не будет проблем
используйте stunnel на своем сервере, чтобы отправить его с помощью gmail. погугли это.
Это довольно просто. (Адаптировать синтаксис для вашего удобства)
public $smtp = array( 'transport' => 'Smtp', 'from' => 'your_email@gmail.com', 'host' => 'ssl://smtp.gmail.com', 'port' => 465, 'timeout' => 30, 'username' => 'your_email@gmail.com', 'password' => '*****' )
Вам нравится библиотека Zend?
$config = array('auth' => 'login', 'ssl' => 'ssl', 'port'=> 465, 'username' => 'XXXX@gmail.com', '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('XXXX@gmail.com', 'Some Sender'); $mail->addTo('kazifriend@gmail.com', 'Some Recipient'); $mail->setSubject('TestSubj'); $mail->send($transport);
Это моя настройка на локальном сервере, и я могу видеть входящую почту в свой почтовый ящик.
Я уверен, что для этого потребуется также учетные данные аутентификации SMTP.
PEAR: Mail работал на меня, отправляя сообщения электронной почты из Gmail. Кроме того, очень помогли инструкции: Как отправить электронную почту с PHP-скрипта с использованием SMTP-аутентификации (с использованием PEAR :: Mail). Спасибо, CMS!