Comment configurer WAMP (localhost) pour envoyer des emails en utilisant Gmail?
Question
Je souhaite utiliser la fonction mail () de mon hôte local. J'ai installé WAMP et un compte Gmail. Je sais que SMTP pour Gmail est smtp.gmail.com et que le port est 465 ( plus d'informations de gmail ). Qu'est-ce que je dois configurer dans WAMP pour pouvoir utiliser la fonction mail ()?
Merci !!
La solution
Les serveurs Gmail utilisent l'authentification SMTP sous SSL ou TLS. Je pense qu'il n'y a aucun moyen d'utiliser la mail()
fonction dans ces circonstances, vous pouvez donc vérifier ces alternatives:
Ils supportent tous l'authentification SMTP sous SSL.
Vous devrez activer l'extension php_openssl
dans votre php.ini.
Ressources supplémentaires:
- Comment envoyer un courrier électronique à partir d'un script PHP à l'aide de l'authentification SMTP (avec
PEAR::Mail
) - Envoyer un e-mail en utilisant PHP avec Gmail (en utilisant phpMailer )
- Mailing à l'aide de
Nette\Mail
Autres conseils
J'ai répondu à cette question ici: (WAMP / XAMP) envoyer un courrier électronique à l'aide de SMTP localhost (fonctionne non seulement avec GMAIL, mais aussi pour les autres).
Si vous ouvrez le fichier php.ini dans wamp, vous trouverez ces deux lignes:
smtp_server
smtp_port
Ajoutez le serveur et le numéro de port de votre hôte (vous devrez peut-être les contacter pour plus de détails)
Les deux lignes suivantes n'existent pas:
auth_username
auth_password
Vous devrez donc les ajouter pour pouvoir envoyer des messages depuis un serveur nécessitant une authentification. Donc, un exemple peut être:
smtp_server = mail.example.com
smtp_port = 26
auth_username = example_username@example.com
auth_password = example_password
C'est assez simple. (Adaptez la syntaxe à votre convenance)
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' => '*****'
)
Au lieu de PHPMailer, Pear's Mail et d’autres, vous pouvez utiliser le bibliothèque de 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);
C’est ma configuration sur le serveur localhost et je peux voir le courrier entrant dans ma boîte aux lettres.
Je sais que dans XAMPP, je peux configurer sendmail.ini pour transférer les e-mails locaux. besoin de définir
smtp_sever
smtp_port
auth_username
auth_password
Cela fonctionne lorsque j'utilise mon propre serveur, pas Gmail, donc je ne peux pas dire avec certitude que vous n'auriez aucun problème
utilisez stunnel sur votre serveur pour envoyer avec gmail. google it.
Je suis convaincu que cela nécessiterait également des informations d'authentification SMTP.
PEAR: La messagerie a fonctionné pour moi en envoyant des messages électroniques à partir de Gmail. En outre, les instructions: Comment envoyer un courrier électronique à partir d'un script PHP à l'aide de l'authentification SMTP (Utiliser PEAR :: Mail) a beaucoup aidé. Merci, CMS!