Aquesta és una revisió antiga del document
Taula de continguts
Correu
Conceptes bàsics
Per a entendre una mica com funciona és necessari tenir clars els conceptes més bàsics del correu
Protocol d'enviament de correus: SMTP
Protocol bàsic de recollida de correus: POP
Protocol avançat de recollida de correus: SMTP
I també són interessats de conèixer els conceptes de MTA, MTX… Però per fer una aplicació que envia i rep correus no són del tot necessàris
Creació d'un compte de correu
Des del panell de Hestia, quan es crea un domini, hi ha una casella de verificació pq. també crei el domini pel correu (bàsicament és un registre DNS de tipus MX).
Ara bé, si no s'ha creat el domini del correu, es pot crear a posteriori.
Hestia -> Mail -> Add Mail Domain
Una vegada creat podem crear comptes de correu segons les necessitats del projecte (el número de comptes i la quantitat de mails enviats tenen un sistema de quotes que l'administrador de Hestia pot modificar)
Creació d'un compte de correu
Hestia > Mail > Símbol «+»
I ens preguntarà les dades bàsiques:
- nom del compte
- Paraula de pas.
- A les opcions avançades podem posar alguns límits o reenviaments.
- Adreça on enviar les credencials
En tot moment, a la dreta, ens mostra tota la informació del compte que estem creant, però si posem un correu, aleshores tindrem tota aquesta informació al nostre correu per poder consultar després (o per compartir) tranquil·lament.
Enviant correu des de PHP
Una de les llibreries típiques és PHPMailer.
Per poder-la fer servir al labs hem de desactivar la verificació dels certificats de la següent forma
try { $mail = new PHPMailer(true) $mail->SMTPOptions = array( 'ssl' => array( 'verify_peer' => false, 'verify_peer_name' => false, 'allow_self_signed' => true ) ); $mail->isSMTP(); $mail->SMTPAuth = true; $mail..... ...
I per depurar:
$mail->SMTPDebug = 2; // Nivells: 0 = cap, 1 = errors i missatges, 2 = missatges de l'estat del client/servidor, 3 = més detallat, 4 = traça detallada $mail->Debugoutput = 'html'; // Format de sortida (html o text)
Exemple complet
- config.php
<?php /* Fitxer de configuració: config.php */ return [ 'server' => 'mail.test1.daw.inspedralbes.cat', 'username' => 'info@test1.daw.inspedralbes.cat', 'password' => 'Passw0rd!', 'port' => 587, ];
