Smtp engedélyezési kód. E-mailek küldése (SMTP vs. mail PHP). Hogyan küldjünk e-mailt az ASP használatával

Mivel a virtuális Windows hosting szerverekről anonim üzenetek küldése tilos, ezért a levelek küldése SMTP szerveren keresztül történjen, melyhez levelezőrendszerünk is használható.

Hogyan lehet e-mailt küldeni PHP-vel?

Bármely PHP-osztály használata, amely támogatja az engedélyezést az smtp-kiszolgálón. Használhatja például a PHPMailer osztálykészletet.

Használhatja példánkat is, amely smtp-szerver segítségével valósítja meg a levelek küldését, amihez engedély szükséges. Ezért ne felejtse el hozzáadni a megfelelő hozzáférési adatokat a szkripthez, például:

// Ha meg kell jelenítenie az SMTP munkamenet naplóját, törölheti a következő sor megjegyzéseit. // $_SERVER["debug"] = igaz; function MailSmtp ($fogadó, $tárgy, $tartalom, $fejlécek, $debug = 0) ( $smtp_server = "smtp.site"; // SMTP szerver címe$smtp_port = 25 ; // SMTP szerver port$smtp_user = " [e-mail védett]" ; // Felhasználónév az SMTP-kiszolgálón történő engedélyezéshez$smtp_password = "PASSWORd" ; // Jelszó a hitelesítéshez az SMTP szerveren$mail_from = " [e-mail védett]" ; // Postafiók, ahonnan a levelet küldik$sock = fsockopen ($smtp_szerver, $smtp_port, $errno, $errstr, 30); $str = fgets ($zokni, 512); if (! $sock ) ( printf ( "Socket nincs létrehozva\n" ); exit(1 ); ) smtp_msg ($sock , "HELO " . $_SERVER [ "SERVER_NAME" ]); smtp_msg($sock, "BEJELENTKEZÉS hitelesítése"); smtp_msg ($sock, base64_encode ($smtp_user)); smtp_msg ($sock, base64_encode ($smtp_password)); smtp_msg ($sock , "LEVÉL FELTŐL:<" . $mail_from . ">" ); smtp_msg ($sock , "RCPT TO:<" . $reciever . ">" ); smtp_msg ($sock , "DATA" ); $headers = "Tárgy: " . $tárgy . "\r\n" . $fejlécek ; $data = $fejlécek . "\r\n\r\n" . $content . "\r\n." ; smtp_msg ($sock , $data ); smtp_msg ($sock , "QUIT" ); fclose ($sock ); ) függvény smtp_msg ($sock , $msg ) ( if ( ! $sock ) ( printf ("Broken socket!\n" ); exit(1 ); ) if (isset($_SERVER [ "debug" ]) && $_SERVER [ "debug" ]) ( printf ( "Küldés tőlünk" : %s
" , nl2br (htmlspecialchars ($msg )); ) fputs ($sock , " $msg \r\n" ); $str = fgets ($sock , 512 ); if (! $sock ) ( printf ( "A foglalat down\n" ); exit(1); ) else ( if (isset($_SERVER [ "debug" ]) && $_SERVER [ "debug" ]) ( printf ("Szerverről érkezett: %s
" , nl2br (htmlspeciális karakterek ($str )); ) $e = felrobban (" " , $str ); $kód = array_shift ($e ); $str = implode ( " " , $e ); if ($code > 499 ) ( printf ( "Problémák az SMTP-beszélgetéssel.

Kód %d.
Üzenetek
"
, $kód , $str ); kilépés(1); ) ) ) ?>

Tölts le egy példát egy kész szkriptre a MailSmtp() függvénnyel: smtpauth.php.sample

Használhatja a fent leírt MailSmtp() függvényt a mail() függvény közvetlen helyettesítésére; nézzünk meg egy példát a PHP legegyszerűbb formájára:

// Üzenetfejlécek, ezek határozzák meg az üzenet kódolását, Feladó, Címzett mezőket stb.$headers = "MIME-verzió: 1.0\r\n" ; $fejlécek .= "Tartalomtípus: szöveg/html; charset=windows-1251\r\n"; $headers .= "Címzett: $hoz \r\n" ; $fejlécek .= "Feladó: Feladó neve " ; // mail ($címzett, $tárgy, $üzenet, $fejlécek); request_once "smtpauth.php" ; MailSmtp ($címzett, $tárgy, $üzenet, $fejlécek); ) ?>
Kinek: Tantárgy: Szöveg: 
 
 

Azért, hogy ez a forma a mail() függvény nélkül működött, az smtpauth.php fájlt a request_once-on keresztül beépítettük, és az abban leírt MailSmtp() függvényt hívtuk meg, a mail(-hez hasonló argumentumokkal). Ugyanakkor a mail() meghívót kommentáltuk a kódban, hogy elkerüljük a hibákat a szkript végrehajtása során.

Hogyan lehet e-mailt küldeni az ASP.NET használatával?

Ha 2.0-s verziót használ, akkor használja a MailMessage osztályt System.Net.Mail), jól leírva.

Az alábbiakban példákat talál a C# és VisualBasic nyelveken való használatára:

Példa a C# nyelvre:

<% @Page Language="c#" %> <% @Import Namespace="System.Net.Mail" %> <% @Import Namespace="System.Net" %> <% MailMessage message = new MailMessage(); // új betű létrehozásaüzenet.To.Hozzáadás(" [e-mail védett]"); // a címzett címének hozzáadásaüzenet.From = new MailAddress("from@" domain.tld", "Küldő neve"); // a feladó nevének és címének megadásával message.Subject = "Üzenet tárgya"; // a levél tárgyának megadása message.BodyEncoding = System.Text.Encoding.UTF8; // a betűkódolás megadásaüzenet.IsBodyHtml = false; // a betűformátum megadása (true - HTML, false - not HTML) message.Body = "Üzenet szövege"; // a levél szövegének (törzsének) megadása SmtpClient kliens = new SmtpClient("smtp.site",25); // új kapcsolat létrehozása az "smtp.site" szerverrel client.DeliveryMethod = SmtpDeliveryMethod.Network; // az üzenetek küldésének módját határozza meg client.EnableSsl = false; // letiltja a biztonságos kapcsolat szükségességét a szerverrel client.UseDefaultCredentials = false; // letiltja az alapértelmezett engedélyezési részletek használatát client.Credentials = new NetworkCredential("postmaster@ domain.tld", "***Jelszó***"); // a szükséges adatok (felhasználónév és jelszó) megadása az SMTP szerveren történő engedélyezéshez kliens.Küldés(üzenet); // üzenet küldése %>

Töltse le a felhasználást bemutató kitöltött űrlap példáját ez a módszer: MailForm.aspx.

Példa a VisualBasic nyelvre:

<% @Page Language="VB" Debug="true" %> <% @Import Namespace="System.Net.Mail" %> <% @Import Namespace="System.Net" %> <% Dim smtpMssg AS new MailMessage smtpMssg.From = New MailAddress ("admin@domain.tld", "Sender_name") smtpMssg.To.Add (" [e-mail védett]") " címzett címének hozzáadása smtpMssg.Subject = "E-mail tárgya" "a levél tárgyának megjelölése smtpMssg.Body = "Üzenet szövege" " a levél szövegének (törzsének) megjelölése smtpMssg.BodyEncoding = System.Text.Encoding.UTF8 " betűkódolás jelzése smtpMssg.IsBodyHtml = false " betűformátum jelzése (igaz - HTML, hamis - nem HTML) Dim SmtpMail Új SmtpClientként ("smtp.site", 25) " egy új "SmtpClient" típusú objektum deklarációja SmtpMail.DeliveryMethod = SmtpDeliveryMethod.Network "a levélkézbesítés módjának megjelölése SmtpMail.UseDefaultCredentials = Hamis "a hitelesítési adatok használatának letiltása alapértelmezés szerint" SmtpMail.EnableSsl = Hamis " letiltja a biztonságos kapcsolat szükségességét a szerverrel SmtpMail.Credentials = new NetworkCredential("postmaster@ domain.tld", "***Jelszó***") "megjelölve a szükséges adatokat (felhasználónév és jelszó) az SMTP-kiszolgálón történő engedélyezéshez SmtpMail.Send(smtpMssg) "üzenet küldése %>

Van egy elavult (és elavult) SmtpMail osztály is (a névteret használva System.Web.Mail). Az alábbiakban egy példa látható a VisualBasic nyelven való használatára:

<% @Page Language="VB" Debug="true" %> <% @Import Namespace="System.Web" %> <% @Import Namespace="System.Web.Mail" %> <% Dim smtpMssg = new MailMessage " egy új "MailMessage" típusú objektum deklarálása smtpMssg.From = "Feladó_neve domain.tld>" "A feladó nevének és címének feltüntetése smtpMssg.To = "admin@ domain.tld" " a címzett címének feltüntetése smtpMssg.BodyFormat = MailFormat.Text " a levél formátumának jelzése smtpMssg.BodyEncoding = Kódolás.UTF8 "jelzi a betűkódolást smtpMssg.Subject = "E-mail tárgya" "a levél tárgyának megjelölése smtpMssg.Body = "Üzenet szövege" " a levél szövegének feltüntetése smtpMssg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate",1) "jelzi az SMTP-engedélyezés szükségességét a szerveren smtpMssg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", "admin@ domain.tld") "felhasználónév az engedélyezéshez smtpMssg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", "***password***") "jelszó az engedélyezéshez SmtpMail.SmtpServer = "smtp.site" ", amely megadja az SMTP-kiszolgáló címét SmtpMail.Send(smtpMssg) "üzenet küldése %>

Hogyan lehet e-mailt küldeni az ASP használatával?

Kérjük, vegye figyelembe, hogy az smtp szerverünk használatakor engedély szükséges, ezért ne felejtse el hozzáadni a megfelelő hozzáférési adatokat a szkripthez, például:

<% iConfig = Server.CreateObject("CDO.Configuration") Set iConfig = Server.CreateObject("CDO.Configuration") With iConfig.Fields .Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.сайт" .Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25 .Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2 .Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1 .Item("http://schemas.microsoft.com/cdo/configuration/languagecode") = "ru" .Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = "postmaster@domain.tld" .Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "jelszó" .Frissítés vége Set-tel cdoMessage = CreateObject("CDO.Message") A cdoMessage Set-tel .Configuration = iConfig .From = "Felhasználó tesztelése domain.tld>" .To = "Felhasználó " .Subject = "Üdvözöljük, felhasználó" .TextBody = "Az üzenetet ASP-szkriptből írtam." .Küldés Befejezés: Set cdoMessage = Semmi nincs beállítva iConfig = Semmi %>

Egyes CMS-ek már rendelkeznek beépített eszközökkel a levelezés vagy a megfelelő modulok küldésére; lássuk a legnépszerűbbeket.

Wordpress

Ehhez a CMS-hez van egy speciális „WP Mail SMTP” modul, amelynek konfigurációs példája a modul oldalán található.

Ügyeljen a példa illusztrációjára, levelezőrendszerünkben a 25-ös portot kell használni, és nincs szükség SSL titkosításra.

Joomla

Az adminisztrációs panelen lépjen az „Általános beállítások” részre, válassza a „Kiszolgáló” lapot. A „Mail” mezőben a küldési módot „SMTP szerverként” kell kiválasztani, az „SMTP szerver címe” és „SMTP bejelentkezés” és „SMTP jelszó” mezőkben pedig adja meg a levelezőrendszer megfelelő adatait, például: smtp.site, box@sajat_domainés megfelelő Jelszó.

Drupal

Ennek a CMS-nek is van saját modulja az SMTP szerverrel való együttműködéshez, amely a PHPMailer. Ez a modul letölthető a CMS Drupal honlapján található oldalán, a modul telepítésének leírása a hozzá tartozó archívumban érhető el.

NetCat

Ez a CMS nem rendelkezik beépített funkciókkal az SMTP szerverrel való együttműködéshez. A webhely szkriptek használatával történő levélküldéshez felajánlhatjuk megoldásunk használatát; a csatlakoztatáshoz a következő lépéseket kell végrehajtania:

  • Töltse le weboldalunkról a szükséges fájlokat tartalmazó archívumot ( send_auth_mail.phpÉs mail.inc.php), és csomagolja ki a számítógépére;
  • Fájl szerkesztése send_auth_mail.php az archívumból, feltüntetve benne a kívánt SMTP-szerverhez való csatlakozás részleteit:

    • $mail_smtpServer = "smtp.site"; (SMTP szerver címe)
    • $mail_port = "25" ; (csatlakozó port)
    • $mail_felhasználónév = "[e-mail védett]" ; (felhasználónév az SMTP-kiszolgálón történő engedélyezéshez)
    • $mail_password = "Jelszó"; (jelszó a hitelesítéshez az SMTP szerveren)
  • Készítsen biztonsági másolatot a fájlról domain.tld/www/netcat/admin/mail.inc.php;
  • fájlok letöltése send_auth_mail.phpÉs mail.inc.php a címtár virtuális webhelyére domain.tld/www/netcat/admin/

domain.tld le kell cserélni a domain nevére.

A javasolt megoldás minden olyan NetCat modullal működik, amely a CMS szabványos funkcióit használja levelek küldésére.

Sokáig kerestem a megoldást arra, hogy ne a PHP mail() függvényében, hanem SMTP levelezőszervereken keresztül küldjek leveleket a felhasználóknak. Az interneten nincs sok sokféle információ, és ami ott van, az nem egészen működik, vagy egyáltalán nem működik. Ezért mindent összeraktam, és saját kódot írtam, az oldalakon bemutatott kész kódok alapján.

Miért küldjön SMTP-n keresztül és nem levélben ()

A válaszom nagyon egyszerű – egy ideig a vírusok tonnányi levelet küldtek a szerveremen keresztül, ami ahhoz vezetett, hogy az IP-címemet számos levelező, különösen a gmail.com, BANÁLT, és ezzel összefüggésben a felhasználók leveleket kaphattak, így én alternatívát kellett keresnem, és megtaláltam - ez az SMTP

Érdekelheti, hogy az én forgatókönyvem miért jobb, mint másoké, amelyek a szabadban hevernek?! válaszolok

  1. Működik a Yandex, Rambler, Mail szolgáltatásokkal (a gmail nem tudott nyerni)
  2. Törölje a kódot. A beállításhoz csak módosítson néhány sort
  3. HTML formátumban küld e-maileket

Itt vannak a forgatókönyvem előnyei, amelyeket sehol nem találtam az interneten, de mindegyikből mindent elvettem, amire szükségem volt. Tehát nézzük a kódot.

Függvény smtpmail($mail_to, $subject, $message, $service="yandex") ( $config["smtp_charset"] = "windows-1251"; //üzenetkódolás. (vagy UTF-8 stb.) $config [ "smtp_from"] = "mashintop.ru"; //Az Ön neve – vagy a webhelye neve. A "Feladó" mezőben jelenik meg $config["smtp_debug"] = false; //Ha akarja a hibaüzenetek megtekintéséhez adja meg a true helyett a hamis értéket $config["smtp_port"] = "25"; // Munkaport. Ne módosítsa, ha nem biztos benne. if($service=="yandex") ( $config[ "smtp_searcher"] = "yandex. ru"; $config["smtp_email"] = " [e-mail védett]"; $config["smtp_username"] = "mashintop"; //Változtasd meg a postafiókod nevét. $config["smtp_host"] = "smtp.yandex.ru"; //kiszolgáló levelek küldésére $config[" smtp_password "] = "moi_parol"; //Jelszó módosítása ) elseif($service=="rambler") ( $config["smtp_searcher"] = "rambler.ru"; $config["smtp_email"] = " [e-mail védett]"; $config["smtp_username"] = "mashintop"; //Változtasd meg a postafiókod nevét. $config["smtp_host"] = "smtp.rambler.ru"; //kiszolgáló levelek küldésére $config[" smtp_password "] = "moi_parol"; //Jelszó módosítása ) elseif($service=="mail") ( $config["smtp_searcher"] = "mail.ru"; $config["smtp_email"] = " [e-mail védett]"; $config["smtp_username"] = "mashintop"; //Változtasd meg a postafiókod nevét. $config["smtp_host"] = "smtp.mail.ru"; //kiszolgáló levelek küldésére $config[" smtp_password "] = "moi_parol"; //Jelszó módosítása ) elseif($service=="gmail") ( $config["smtp_searcher"] = "gmail.com"; $config["smtp_email"] = " [e-mail védett]"; $config["smtp_username"] = "alexeybertram"; //Változtasd meg a postafiókod nevét. $config["smtp_host"] = "smtp.gmail.com"; //kiszolgáló levelek küldésére $config[" smtp_password "] = "moi_parol"; //Jelszó módosítása ) $header="Dátum: ".date("D, j M Y G:i:s")." +0700rn"; $header.="From: =?windows-1251?Q?".str_replace("+","_",str_replace("%","=",urlencode("".$config[" smtp_from"]."")))."?=<".$config["smtp_email"].">rn"; $header.="X-Mailer: A denevér! (v3.99.3) Professionalrn"; $header.="Válaszcím: =?windows-1251?Q?".str_replace("+","_",str_replace("%","=",urlencode(" ".$config["smtp_from"]."")))."?=<".$config["smtp_email"].">rn"; $header.="X-Priority: 3 (normál)rn"; $header.="Üzenetazonosító:<172562218.".date("YmjHis")."@".$config["smtp_searcher"].">rn"; $header.="Címzett: =?windows-1251?Q?".str_replace("+","_",str_replace("%","=",urlencode("")))."? =<$mail_to>rn"; $header.="Tárgy: =?windows-1251?Q?".str_replace("+","_",str_replace("%","=",urlencode("".$tárgy."") )))."?=rn"; $header.="MIME-verzió: 1.0rn"; $header.="Tartalom típusa: szöveg/html; charset=windows-1251rn"; $header.="Tartalom-átviteli kódolás: 8bitrn"; $smtp_conn = fsockopen("".$config["smtp_host"]."", $config["smtp_port"],$errno , $errstr, 10); if(!$smtp_conn) (kiírja a "kapcsolat a szerverekről nem sikerült"; fclose($smtp_conn); exit;) $data = get_data($smtp_conn); fputs($smtp_conn,"EHLO ". $ config["smtp_searcher"]."rn"); $code = substr(get_data($smtp_conn),0.3000); if($code != 250) ("EHLO hello error" nyomtatása; fclose($smtp_conn) ; exit; ) fputs($smtp_conn,"AUTH LOGINrn"); $code = substr(get_data($smtp_conn),0.3000); if($code != 334) (nyomtassa ki: "a szerver nem engedélyezte az engedélyezés megkezdését"; fclose ($ smtp_conn); exit;) fputs($smtp_conn,base64_encode("".$config["smtp_username"]."")."rn"); $code = substr(get_data($smtp_conn),0,3000) ; if ($code != 334) ("hiba a felhasználó elérésekor" nyomtatása; fclose($smtp_conn); exit;) fputs($smtp_conn,base64_encode("".$config["smtp_password"].""). "rn" ); $code = substr(get_data($smtp_conn),0,3000); if($code != 235) ("hibás jelszó" nyomtatása; fclose($smtp_conn); kilépés;) fputs($smtp_conn,"MAIL FROM:".$config["smtp_email"]."rn"); $kód = substr(get_data($smtp_conn),0,3000); if($code != 250) (print "a szerver megtagadta a MAIL FROM parancsot"; fclose($smtp_conn); exit;) fputs($smtp_conn,"RCPT TO:".$mail_to."rn"); $kód = substr(get_data($smtp_conn),0,3000); if($code != 250 ÉS $code != 251) (print "A szerver nem fogadta el az RCPT TO parancsot"; fclose($smtp_conn); exit;) fputs($smtp_conn,"DATArn"); $kód = substr(get_data($smtp_conn),0,3000); if($code != 354) (print "a szerver nem fogadta el az ADATOKAT"; fclose($smtp_conn); exit;) fputs($smtp_conn,$header."rn".$message."rn.rn"); $kód = substr(get_data($smtp_conn),0,3000); if($code != 250) ("hiba küldés levél" nyomtatása; fclose($smtp_conn); exit;) fputs($smtp_conn,"QUITrn"); fclose($smtp_conn); ) függvény get_data($smtp_conn) ( $data=""; while($str = fgets($smtp_conn,515)) ( $data .= $str; if(substr($str,3,1) == " " ) ( break; ) ) return $data; ) $text_email = " Ön most felvett egy hirdetést a mashintop.ru webhelyen. Itt megtekintheti
Az Ön kulcsa: ".$key."

Ezzel a kulccsal kezelheti hirdetését.

"; $text_email .= " "; smtpmail(" [e-mail védett]", "A hirdetés kulcsa a mashintop.ru webhelyen", $text_email, "yandex"); //use Yandex smtpmail(" [e-mail védett]", "A hirdetés kulcsa a mashintop.ru webhelyen", $text_email, "mail"); //használja az e-mailt smtpmail(" [e-mail védett]", "A hirdetés kulcsa a mashintop.ru webhelyen", $text_email, "rambler"); //használja a rambler smtpmail(" [e-mail védett]", "A hirdetés kulcsa a mashintop.ru oldalon", $text_email, "gmail"); // de a gmail nem működik :(

Ez minden, a kész szkript a kezedben van, csak másold ki, változtasd meg a $config tömb értékeit, és minden jól fog működni.

Most nézzünk meg néhány elemet, amelyekre szeretnék összpontosítani.

Például az a hiba, amelyet akkor kapunk, amikor SMTP-n keresztül próbálunk küldeni a Google-nak. Kezdetben ezt a hibaszöveget látjuk:

Ha valami konkrétabbat szeretne látni, módosítsunk egy kicsit a kódon

Fputs($smtp_conn,"AUTH LOGINrn"); $kód = substr(get_data($smtp_conn),0,3000); echo $kód; if($code != 334) (nyomtassa ki: "a szerver nem engedélyezte az engedélyezés megkezdését"; fclose($smtp_conn); kilépés;)

És a végén egy nagyon konkrét hibát kapunk

530 5.7.0 Először ki kell adnia egy STARTTLS parancsot. x4sm16408296lbn.2 - gsmtp

Nem tudom, mit jelent pontosan, de úgy gondolom, hogy köze van a biztonságos, nem biztonságos kapcsolathoz. Még nem tudom, hogyan szabaduljak meg tőle, így a gmail jelenleg veretlen.



2019-08-05

Szia kedves látogató!

Elnézést kérek a blog frissítésének késéséért. De ennek van egy teljesen érthető magyarázata. Végül is nyár volt, a dacha, a vendégek, az erdő, a víz és még sok minden más, ami nem tette lehetővé, hogy megküzdjek a honlapkészítés kérdéseivel. De most egy kicsit felszabadultam, a vendégek elmentek, és úgy gondolom, hogy most erre biztosan tudok majd kellő figyelmet fordítani.

Tehát miután az előző cikkben összekapcsoltuk domainünk leveleit az egyik levelezőszolgáltatással, most nézzük meg, hogyan küldhet e-mailt az oldalról. Sőt úgy, hogy leveleink ne SPAM-be kerüljenek, hanem megbízhatóan, nagy valószínűséggel kézbesítsék címzettjeinket.

Általában van egy beépített mail() függvény a levelek küldésére PHP-ben. De meg kell jegyezni, hogy ennek a módszernek az egyszerűsége ellenére (ebben az esetben a levelek küldéséhez elegendő csak egy kódsort megadni bizonyos paraméterekkel), ennek az opciónak van egy jelentős hátránya a SPAM problémájával kapcsolatban. .

A helyzet az, hogy a levelezőszerverek spam-szűrője a címzett oldalán nem igazán részesíti előnyben a mail() függvényen keresztül küldött leveleket. És a legtöbb esetben az ilyen üzeneteket a rendszer kiszűri, vagy akár törli is, mielőtt elérné a címzettet.

Az ilyen esetek lehető legnagyobb mértékű kiküszöbölésére pedig egy másik lehetőséget szoktak alkalmazni, amikor is úgy küldik el a leveleket, mintha egy harmadik fél levelezőszolgáltatása tenné.

Ezt a módszert SMTP-n keresztüli levélküldésnek hívják felhatalmazással. Amit ma megvizsgálunk a visszajelzési űrlap elküldésének példáján. Sőt, ehhez a meglehetősen jól ismert és népszerű PHPMailer könyvtárat fogjuk használni, amely lehetővé teszi az SMTP-n keresztüli levélküldés egyszerű megszervezését.

  • Hogyan küldjük el a visszajelző leveleket
  • Visszajelzési űrlap készítése
  • A PHPMailer könyvtár telepítése
  • Létrehozunk egy szkriptet az SMTP-n keresztüli levélküldéshez
  • E-mail küldés ellenőrzése
  • A webhely forrásfájljai

Hogyan küldjük el a visszajelző leveleket

Mielőtt elkezdené a visszajelzési levelek küldésének gyakorlati munkáját, először döntsük el, hogyan fogjuk ezt megtenni.

A visszajelzési űrlap célja, hogy a felhasználó kommunikálhasson a webhely adminisztrátorával, hogy továbbítsa üzenetét. Ez az űrlap általában több mezőből és egy „Küldés” gombból áll.

E-mail küldéséhez elvileg elegendő néhány olyan mezőt használni, amelyek elegendő információt nyújtanak a felhasználóról és az üzenet tartalmáról, mint például:

  • "Név" - az üzenet küldőjének nevének megadása;
  • "E-mail" - a feladó e-mail címe;
  • "Üzenet Tárgya";
  • "Üzenet szövege".

Bár felvehetsz másokat is. Például egy telefonszámot, ha ez valóban szükséges.

Esetünkben az ilyen leveleket a webhely adminisztrátorának címére küldjük egy valódi postafiókból, amely jogosult arra a levelezési szolgáltatásra, amelyhez domainünk kapcsolódik.

Mivel az előző cikkben a domain leveleinek a Yandex.Mail szolgáltatáshoz való kapcsolódásának ellenőrzésére összpontosítottunk, ezért erre a lehetőségre küldünk levelet. Bár ez nem fontos. Az alábbiakban azokat a beállításokat láthatja, amelyek megváltoztatásával lehetővé teszik az e-mailek küldését a Mail.ru levelezőszerveren keresztül.

Valódi postafiókként, ahonnan a levelek küldésre kerülnek, egy újonnan létrehozott domain levelező felhasználó fiókját fogjuk használni, mondjuk a címmel [e-mail védett]. Ezeket a leveleket pedig az adminisztrátor postaládájába küldjük [e-mail védett], amelyet korábban az előző cikkben készítettünk.

Így a visszajelzési űrlapról érkező levél feladója a postafiók lesz [e-mail védett]., és a címzett - [e-mail védett]. Ebben az esetben az üzenetet küldő felhasználóra vonatkozó összes információ az elküldött levél szövegében kerül továbbításra.

Visszajelzési űrlap készítése

Miután eldöntöttük a levélküldés menetét, most készítünk egy visszajelzési űrlapot, amellyel ezt megtesszük.

Alább található ennek az űrlapnak a HTML kódja, amelyet a "Kapcsolatok" oldalon helyezünk el (a kontakty.php fájl a cikkek könyvtárában).

    "cikk" >

    Kapcsolatok

    Visszacsatolás

    "kapcsolatba lépni" akció = "#" módszer = "posta" >

    Visszajelző űrlap

    Minden kérdésével, kérésével és üzleti javaslatával kapcsolatban az alábbi visszajelzési űrlap segítségével fordulhat hozzánk.

    "kapcsolati blokk" >

    "contact-input" >

    "szöveg" id = "kapcsolattartó neve" név = "kapcsolattartó neve" cím = "A névnek orosz nyelvűnek kell lennie, és legalább 3 karakterből kell állnia" minta = "{3,}" kötelező >

  1. "üres érintkező" >

    "contact-input" >

    "email" id = "kapcsolattartó e-mail" név = "kapcsolattartó e-mail" kötelező >

  2. "kapcsolat-tárgy" >

  3. "kapcsolat-megjegyzés" >

  4. "kapcsolattartó gomb" >

    "Beküldés" név = "kapcsolattartó gomb"érték = "Küld" >

1. ábra A visszajelzési űrlap HTML kódja

A következő képernyőképen láthatja, hogyan néz ki végül az itt látható visszajelzési űrlap.

Így létrejön a kívánt forma. És most áttérhet az adatok feldolgozásának és e-mail üzenet formájában történő elküldésének kérdéseire.

A PHPMailer könyvtár telepítése

Amint azt korábban megjegyeztük, a levélküldéshez a PHPMailer könyvtárat fogjuk használni, amely jelentősen leegyszerűsíti az SMTP protokollon keresztüli e-mailek küldését harmadik fél levelezőszolgáltatásának engedélyezésével.

A telepítéshez le kell töltenie a szükséges fájlokat. Ez megtehető a GitHub webszolgáltatásból a Composer (a PHP csomagfüggőségi kezelője) segítségével. Vagy egyszerűen töltse le a szükséges fájlokat a szokásos módon.

képernyőkép 73

Lent található a GitHub webszolgáltatás oldala, ahol a PHPMailer könyvtár szokásos letöltésére mutató hivatkozás található.

Emellett a cikk írásakor mentett legújabb, 6.0.7-es verzió letölthető a mellékelt anyagokból.

A létrejövő archív fájlt minden esetben ki kell csomagolni, majd a kibontott PHPMailer-master mappát annak teljes tartalmával együtt az oldal gyökérkönyvtárába kell helyezni. Ugyanakkor az egyszerűség kedvéért átnevezheti PHPMailer-re. Az alábbiakban a webhely gyökérkönyvtárában található PHPMailer mappa tartalma látható.

Így telepítettük a PHPMailer könyvtárat. Ezt követően elkezdhetjük létrehozni a szkriptet, amellyel email üzeneteket küldünk a weboldalunkról.

Létrehozunk egy szkriptet az SMTP-n keresztüli levélküldéshez

A szkript összeállításához elegendő a GitHub oldalon található PHPMailer használatára vonatkozó ajánlásokat használni, amelyeket korábban a könyvtár letöltéséhez használtunk.

Ezek különösen azt jelzik, hogy a szkript elején a PHPMailer osztályokat a globális névtérbe kell importálni. És a megfelelő kód konkrét sorai vannak megadva. Vannak példák a PHPMailer tulajdonságainak és metódusainak használatára is, beleértve az SMTP-n keresztüli levelek küldésének lehetőségét is.

De ha ez nem elég, akkor használhatja a dokumentációt is, amely a könyvtár összes tulajdonságának és metódusának leírását tartalmazza.

képernyőkép 74

Az alábbiakban látható a visszajelzési űrlapról SMTP-n keresztül történő levélküldéshez használt szkriptkód. Ahol a PHPMailerhez kapcsolódó összes sor magyarázattal és világos háttérrel van kiemelve.

A többi részt, beleértve az adatfogadáshoz és adatfeldolgozáshoz kapcsolódó töredékeket is, amelyeket korábban más processzorokban kellett használnunk, sötét háttér jelzi. Ezeket részletesen tárgyaltuk korábban egy cikkben, amely kifejezetten a PHP-beli űrlapok adatainak megszerzésével és ellenőrzésével foglalkozik. Ahol az űrlapadatok érvényesítését és feldolgozását szolgáló univerzális felhasználói funkcióról is beszéltünk check_symbol().

Ezt a szkriptet ugyanabba a kontakty.php fájlba helyezzük el, amelyben korábban létrehoztuk a visszajelzési űrlapot.

    //----Szkript levelek küldéséhez SMTP-n keresztül PHPMailer segítségével ----

    //A PHPMailer osztályok importálása a globális névtérbe. A szkript tetején kell lenniük, nem a függvényen belül

    használat PHPMailer\PHPMailer\PHPMailer ;

    használat PHPMailer\PHPMailer\Exception ;

    ha (!üres($_POST["contact-button" ])) (

    $név = $_POST["kapcsolatnév" ];

    $name = check_symbol ($név, "Név" , "1" , "/^+\z/iu" );

    $email = $_POST["kapcsolattartó-e-mail" ];

    $email = check_symbol ($email, "E-mail" , "1" , "/^+@(+\.)+(2,6)\z/i");

    $tárgy = $_POST["kapcsolat-tárgy" ];

    $tárgy = check_symbol ($tárgy, "Üzenet tárgya" , "1" , "0" );

    $megjegyzés = $_POST["contact-comment" ];

    $megjegyzés = check_symbol ($megjegyzés, "Üzenet szövege", "1" , "0" );

    ha (!üres($GLOBALS["figyelmeztetés" ])) (

    $figyelmeztetés = "Az űrlap adatait nem küldték el. A következő hibákat találtuk:\n".$figyelmeztetés;

    tartalmazza"alert.php" ;

    más {

    //A könyvtár csatlakoztatása

    igényelnek"PHPMailer/src/PHPMailer.php" ;

    igényelnek"PHPMailer/src/Exception.php" ;

    igényelnek"PHPMailer/src/SMTP.php" ;

    $mail = új PHPMailer(); //Osztály inicializálása

    $from = " [e-mail védett]" ; //E-mail cím, ahonnan a levelet küldték

    $to = " [e-mail védett]" ; //A címzett címe

    $mail -> isSMTP(); //Használja az SMTP protokollt

    $mail -> Host = "smtp.yandex.ru" ; //Levelezőszerver címe

    $mail -> SMTPAuth = igaz ; //Engedélyezési mód engedélyezése

    $mail -> Felhasználónév = " [e-mail védett]" ; //Bejelentkezés egy harmadik féltől származó e-mail szolgáltatáshoz (jelen esetben a Yandex.Mailhez) kapcsolódó domain e-mailből

    $mail -> Jelszó = "27MrDon89" ; //Jelszó a tartományi levelezéshez

    $mail -> SMTPSecure = "ssl" ; //Titkosítási protokoll

    $mail -> Port = "465" ; //SMTP szerver port

    $mail -> CharSet = "UTF-8" ; //Kódolás

    $mail -> setFrom ($from, "Rendszergazda" ); //A feladó címe és neve

    $mail -> addAddress ($címzett, "Adminisztrátor" ); //Címzett címe és neve

    $mail -> isHTML ( igaz ); //Az e-mail formátum beállítása HTML-re

    $mail -> Tárgy = "Visszajelzési űrlap elküldve"; //E-mail tárgya (címsor)

    $mail -> Törzs = "

    Küldő neve: $név

    A feladó címe: $e-mail

    Üzenet Tárgya: $tárgy

    Az üzenet tartalma: $megjegyzés



    " ; //Üzenet tartalma

    $mail -> AltBody = "Alternatív levél szövege"; //Alternatív e-mail, ha az e-mail kliens nem támogatja a HTML formátumot

    $mail -> SMTPDbug = 0 ; //SMTP hibakeresés engedélyezése: 0 - kikapcsolva (normál használathoz), 1 = kliens üzenetek, 2 - kliens és szerver üzenetek

    ha($mail -> küld()) (

    $figyelmeztetés = "Üzenet elküldve"; //Üzenet kiírása a böngésző párbeszédpanelében a levél sikeres elküldéséről

    más {

    $figyelmeztetés = "Hiba, e-mailt nem lehet elküldeni:".$mail -> ErrorInfo ; //Hibaüzenetet ad ki

    tartalmazza"alert.php" ;

5. ábra Szkript SMTP-n keresztüli e-mail küldéshez jogosultsággal

Amint láthatja, az e-mail üzenet küldésével közvetlenül kapcsolatos összes sort, amelyben a szükséges módszerek és tulajdonságok vannak megadva, megjegyzések kísérik. Ezért nincs értelme ismételgetni magunkat, de csak néhányukon tudunk elidőzni, amelyek valóban további magyarázatokat igényelnek, nevezetesen:

1. Tekintettel arra, hogy a levelet harmadik fél levelezőszolgáltatása küldi, itt az adott SMTP-szervernek megfelelő beállítások kerülnek alkalmazásra. Ebben az esetben a Yandex.Mail szerver használatához a következő tulajdonságértékeket kell alkalmazni:

  • Ingatlan Házigazda(28. poz.) - Levelezőszerver címe smtp.yandex.ru értékkel;
  • Ingatlan SMTPSecure
  • Ingatlan Kikötő

Ezeket a tulajdonságértékeket a következő képernyőképen látható Yandex.Help oldalról vettük.

De az ilyen információk más forrásokból is beszerezhetők. Ehhez csak írja be a megfelelő lekérdezést egy keresőmotorba, például: „Yandex smtp szerver”. Hol található nagyszámú hivatkozás ebben a kérdésben.

Hasonló módon a beállítások értékei más SMTP szerverekről is beszerezhetők. Az alábbiakban a Mail.ru Súgó oldalának képernyőképe látható, amely megjeleníti a Mail.ru levelezőszolgáltatás SMTP-kiszolgálójának beállításait.

Így a Mail.ru külső SMTP-kiszolgálóként történő használata esetén a PHPMailer osztály következő tulajdonságait kell alkalmazni:

  • Ingatlan Házigazda(poz.28) - Levélkiszolgáló címe (smtp.mail.ru);
  • Ingatlan SMTPSecure(poz.32) - Titkosító protokoll (ssl);
  • Ingatlan Kikötő(33. poz.) - SMTP szerver port (465).

Hasonló megközelítést kell alkalmazni más e-mail szolgáltatásoknál is.

2. Ingatlanban Felhasználónév(30. poz.) a domain postafiók teljes címét szükséges feltüntetni. Ebben az esetben, " [e-mail védett]".

Ha azonban nem domain levelezőfiókot használ levelek küldésére, hanem közvetlenül a levelezési szolgáltatáshoz kapcsolódó címet, például " [e-mail védett]", akkor a bejelentkezés csak a címnek a "@" jelig terjedő része legyen. Ebben az esetben a bejelentkezés értéke "feedback".

3. A PHPMailer egy tulajdonságot biztosít SMTPDbug(50. poz.), amely lehetővé teszi a különböző szintű hibák megjelenítését a böngésző képernyőjén. Ez a funkció nagymértékben leegyszerűsíti a szkriptek hibakeresése során felmerülő problémák megtalálását.

Normál módban, 0-ra beállított érték mellett, a részletes hibainformáció kimenete általában le van tiltva. De ha problémák merülnek fel az e-mail küldésével vagy a hibakeresés során, akkor más értékeket is használhat a hibával kapcsolatos értelmesebb információk megjelenítéséhez.

Annak érdekében, hogy lássuk, hogyan néz ki ez a gyakorlatban, ideiglenesen iktassunk be néhány hibát a beállításokba. Például a domain levelezési jelszavában (property Jelszó, 31. poz.). És a tulajdonságban ideiglenesen beállított hibával kapcsolatos részletes információk megjelenítéséhez is SMTPDbug(50. poz.) érték 1. Miután minden hibakeresés és ellenőrzés megtörtént, letiltjuk az SMTP hibakeresési módot, és az 1-et 0-ra cseréljük.

A szkript utolsó részében az összes szükséges tulajdonság és metódus megadása után a metódus kerül felhasználásra a levél elküldésére Küld()) (51. poz.). És ha a levelet elküldik, és a módszert Küld() tárgyhoz $mail igazat ad vissza, majd a böngésző párbeszédpanelen a változón keresztül $figyelmeztetés Megjelenik egy üzenet a sikeres levélküldésről (52. poz.).

Ha valamilyen okból nem sikerült elküldeni a levelet, és ennek megfelelően a metódus nem tudott igazat adni, akkor ezt az állapotot egy megfelelő hibaüzenet kíséri (55. poz.).

E-mail küldés ellenőrzése

Miután elkészítettük a levélküldéshez szükséges szkriptet, természetesen meg kell néznünk „kreativitásunk” eredményét. Itt mindent figyelembe vettünk, és nem hibáztunk?

Ehhez próbáljunk meg szándék szerint üzenetet küldeni a felhasználótól a webhely rendszergazdájának a visszajelzési űrlapon. Az alábbiakban a visszajelzési űrlap képernyőképe látható, a beküldés előtt kitöltött mezőkkel.

És itt az űrlap beküldésének eredménye.

Ahol a böngésző párbeszédpanelének üzenetéből egyértelműen kiderül, hogy a levelet nem lehet elküldeni az SMTP kapcsolat problémája miatt.

De azóta az ingatlan SMTPDbug(50. poz.) 1-es értéket kap, akkor részletes információkat láthatunk a fellépő hibáról és megtudhatjuk annak okát.

A következő képernyőkép azt mutatja, hogy a csatlakozási kísérlet során hitelesítési hibát észleltek, ami helytelen bejelentkezési vagy jelszó használatát jelenti.

A jelszó-eltérés kiküszöbölése után (korábban hibás jelszót használtak a hibával kapcsolatos további információk ellenőrzésére) megpróbáljuk újra elküldeni a levelet.

Ezúttal úgy tűnt, hogy minden rendben ment, és üzenetet kaptunk, hogy a levél sikeresen el lett küldve. Úgy tűnik, a domain mail jelszavában szándékosan beírt ideiglenes hiba kivételével más hibát nem követtünk el.

De annak érdekében, hogy megbizonyosodjunk arról, hogy a levelet valóban kézbesítették a címzetthez, írjuk be a levél címét [e-mail védett]és nézd meg az eredményt.

Amint látja, a levél a címről [e-mail védett], ahonnan e-mailt küldtünk "Visszajelzés" néven, sikeresen elértük az oldal adminisztrátorát. Ugyanakkor a levél törzse tartalmazza mindazt a tartalmat, amelyet a szkriptben generáltunk a visszajelzési űrlapon kapott adatok felhasználásával, nevezetesen:

  • A feladó neve: Nikolay;
  • A feladó címe: [e-mail védett];
  • Üzenet tárgya: Levélküldés ellenőrzése;
  • Üzenet tartalma: Tesztüzenet.

Most, miután sikeresen ellenőrizte a levélküldést, letilthatja az SMTP hibakeresési módot a tulajdonság hozzárendelésével SMTPDbug(50. poz.) értéke 0.

Ezzel befejeztük azt a feladatot, hogy létrehozzunk egy eszközt az SMTP-n keresztüli levélküldéshez harmadik fél levelezőszerverének felhatalmazásával.

Például a következő cikkben megvizsgáljuk, hogyan kell megerősítő e-maileket küldeni a regisztrált felhasználói fiókok adatainak visszaállításához.

A webhely forrásfájljai

Az oldal forrásfájljai a cikkben elvégzett frissítésekkel letölthetők a mellékelt kiegészítő anyagokból:

  • www könyvtár fájlok
  • MySQL adatbázis táblák

A PHP-ben meglehetősen népszerű a levélküldést automatizáló szkriptek használata. Ebben a cikkben egy egyszerű szkriptet fogunk megnézni, amely SMTP-n keresztül küld leveleket a címzetteknek ( Egyszerű levélátviteli protokoll ). Túl könnyű lenne csak erre a funkcióra korlátozni magunkat, a szkript támogatja a csatolmányokat is, vagyis pdf, txt vagy doc fájlt is csatolhat a leveléhez.

A szkript beállítása meglehetősen egyszerű, mindössze a feladó bejelentkezési nevére és jelszavára van szükség ahhoz az e-mailhez, amelyről a leveleket küldjük.

A script a km_smtp_class.php osztállyal működik, az osztályban az a jó, hogy támogatja a különböző SSL és TLS protokollokat, amelyek biztonságos adatátvitelt biztosítanak.

Itt van maga a script:

"smtp.mail.ru", "SMTP_port" => "25", "SMTP_email" => " [e-mail védett]", "SMTP_pass" => "1111111", "SMTP_type" => "null"); // A címzett e-mailje $Receiver = " [e-mail védett]"; // Üzenet tárgya $Subject = "E-mail küldése PHP-ről"; // Üzenet szövege (HTML-ben) $Text = "Szia!
Szkriptből küldött üzenet Mowshon Webhely: http://site"; // Melléklet a levélben - a fájl címe $Attachment = ""; /* $mail = new KM_Mailer(szerver, port, felhasználó, jelszó, típus); */ /* A típus lehet: null, tls vagy ssl */ $mail = new KM_Mailer($SenderConfig["SMTP_szerver"], $SenderConfig["SMTP_port"], $SenderConfig["SMTP_email"], $SenderConfig["SMTP_pass"], $ SenderConfig[" SMTP_type"]); if($mail->isLogin) ( // Fájl csatolása if($Attachment) ($mail->addAttachment($Attachment);) // További címzettek hozzáadása $mail->addRecipient( " [e-mail védett]"); $mail->addRecipient(" [e-mail védett]") ); // A címzettek listájának törlése $mail->clearRecipients(); $mail->clearCC(); $mail->clearBCC(); $mail->clearAttachments(); ) else ( echo "Hiba történt, miközben csatlakozik az SMTP szerverhez"; ) ?>

A szkript beállítása elsősorban a $SenderConfig tömbön alapul, itt kell megadnunk az SMTP:szerver, port, bejelentkezési és email jelszót. Leírjuk az egyes tömbkulcsokat:

SMTP_szerver – SMTP-szerver címe (egyéni cím a különböző e-mailekhez)

Mail.ru levél: smtp.mail.ru port: 25, 587 és 465 (SSL titkosítással)

Yandex mail: smtp.yandex.ru port: 25, 587 465 (SSL port)

Rambler mail: mail.rambler.ru port: 25, 587 465 (SSL port)

Yahoo levelezés: smtp.mail.yahoo.com SSL port: 465

(Ha a listán nem szereplő smtp szerverek címére van szükséged, írd meg kommentben)

SMTP_port – A fentiekben már leírtuk az egyes smtp szervereknél.

SMTP_email - felhasználó pontosabb lenne, de az egyértelműség kedvéért e-mailt írtam, megadjuk az email címet.

SMTP_pass – Az e-mail jelszava, amely értékként volt megadva az SMTP_email kulcsban


SMTP_type – Alapértelmezett NULL. A levelek küldésének protokollja. Protokollok: SSL és TLS

Mellékleteket adhat hozzá a levélhez úgy, hogy egyszerűen megadja a fájl teljes címét a $Attachment változóban (/var/patch/to/file/File.pdf)

Ha bármilyen kérdése van, írja meg őket az alábbi megjegyzésekben.

Levél PHP

Ez a funkció alapértelmezés szerint e-mail küldésként van megvalósítva. Ez a funkció nem igényel harmadik féltől származó kiszolgálót az e-mailek továbbításához. A funkció helyességének ellenőrzéséhez hozzon létre egy test.php fájlt a webhely mappájában, és helyezze el a következő kódot:

Hol helyette "EMAILBEFOGADÓ" Adja meg az e-mail címet, amelyre a levelet küldeni kell.

Helyezze ezt a fájlt webhelye gyökerébe.

Ezután írja be a www.YourDomain/test.php címet a címsorba. Ha levél érkezik a megadott e-mailre, akkor az Ön tárhelye megfelelően működik a levélküldési funkcióval " PHP levél. Lehetséges, hogy a levél spambe került, ezért azt is ellenőrizni kell.

Ha a levél érthetetlen kódolással érkezett, módosítsa a sort: "Levélküldés ellenőrzése" tovább "Levelek küldésének ellenőrzése", "Content-type:text/html;charset=utf-8".

És ismételje meg a levél elküldését a böngésző címsorán keresztül.

Ha a fenti manipulációk után a tesztlevél nem érkezik meg a végső címzetthez, akkor vegye fel a kapcsolatot a tárhely technikai támogatásával.

A módszer hátrányai között érdemes megjegyezni, hogy ez a módszer nem működik következetesen. Előfordulhatnak fennakadások az e-mailek küldésében a tárhely oldalon.

Ennek a módszernek a fő hátránya, hogy az ügyfelek e-mailjére küldött leveleket nem ismerik fel a levelezési szolgáltatások (gmail, mail.ru, yandex.ru), mivel azokat közvetlenül az Ön webhelyéről küldték.

A Gmail levelezőszolgáltatása ezeket a leveleket kérdőjellel és aláírással jeleníti meg: "A Gmail rendszer nem tudta megerősíteni, hogy ezt a levelet a YourDomain domainről küldték. Lehet, hogy spam."

Hogy elkerülje ezt a helyzetet .

SMTP (Simple Mail Transfer Protocol)

SMTP - levélátviteli protokoll. Összességében az e-mail átvitel beállításához a protokoll használatával magára az SMTP-kiszolgálóra van szükség. A vállalati (domain) yandex.ru levelezés SMTP-kiszolgálóként való használatának leggyakoribb módja a https://pdd.yandex.ru/.

Először is szükséges fiók (mail) yandex, ami alapján az Ön domainjéhez e-mailek jönnek létre: “order@YourDomain” “info@YourDomain”... A fő fiók nem lesz látható sehol, és csak arra szolgál, hogy a jövőben ez alapján hozzon létre domain emaileket.

A személyes Yandex-fiókjában történő engedélyezés után a https://pdd.yandex.ru/ linken létrejön egy domain e-mail. Ez az a domain e-mail, amelyet a felhasználók a „Feladó” mezőben láthatnak.

A „Feladó” mező kitöltése kötelező, ha e-maileket küld SMTP-n keresztül. SMTP használata levelek küldésére, a " Tartomány" - "Email", ezáltal a leveleket a levelezési szolgáltatások felismerik.


Ennek a módszernek a hátrányai között érdemes megemlíteni a tartományi levélportré „betöltésének” lehetetlenségét, mivel maguk a levelezési szolgáltatások még nem biztosítják ezt a funkciót.




Top