Come configurare WAMP (localhost) per inviare e-mail utilizzando Gmail?
Domanda
Voglio usare la funzione mail () dal mio localhost. Ho WAMP installato e un account Gmail. So che SMTP per Gmail è smtp.gmail.com e la porta è 465 ( maggiori informazioni da Gmail ). Cosa devo configurare in WAMP in modo da poter usare la funzione mail ()?
Grazie !!
Soluzione
I server Gmail utilizzano l'autenticazione SMTP in SSL o TLS. Penso che non ci sia modo di usare la funzione mail()
in quelle circostanze, quindi potresti voler controllare queste alternative:
Supportano tutti l'autenticazione SMTP in SSL.
Dovrai abilitare l'estensione php_openssl
nel tuo php.ini.
Risorse aggiuntive:
- Come inviare e-mail da uno script PHP usando l'autenticazione SMTP (utilizzando
PEAR::Mail
) - Invia email utilizzando PHP con Gmail (usando phpMailer )
- Mailing utilizzando
Nette\Mail
Altri suggerimenti
Ho risposto qui: (WAMP / XAMP) invia la posta utilizzando Localhost SMTP (funziona non solo GMAIL, ma anche per altri).
Se apri il file php.ini in wamp, troverai queste due righe:
smtp_server
smtp_port
Aggiungi il numero di server e porta per il tuo host (potrebbe essere necessario contattarli per i dettagli)
Le seguenti due righe non esistono:
auth_username
auth_password
Quindi dovrai aggiungerli per poter inviare posta da un server che richiede autenticazione. Quindi un esempio potrebbe essere:
smtp_server = mail.example.com
smtp_port = 26
auth_username = example_username@example.com
auth_password = example_password
È abbastanza semplice. (Adatta la sintassi per comodità)
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' => '*****'
)
In alternativa a PHPMailer, Pear's Mail e altri è possibile utilizzare Biblioteca di 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);
Questa è la mia configurazione nel server localhost e posso vedere la posta in arrivo nella mia casella di posta.
So che in XAMPP posso configurare sendmail.ini per inoltrare la posta elettronica locale. è necessario impostare
smtp_sever
smtp_port
auth_username
auth_password
funziona quando si utilizza il mio server, non Gmail, quindi non posso dire con certezza che non avresti problemi
usa stunnel sul tuo server, per inviare con Gmail. google it.
Sono sicuro che richiederebbe anche le credenziali di autenticazione SMTP.
PEAR: Mail ha funzionato per me inviando messaggi e-mail da Gmail. Inoltre, le istruzioni: Come inviare e-mail da uno script PHP usando l'autenticazione SMTP (Utilizzo di PEAR :: Mail) è stato di grande aiuto. Grazie, CMS!