“eroare Smtp: nu s-a reușit conectarea la server” – cauze și remedieri

în aceste zile, opțiunea de a trimite e-mailuri este o cerință de bază a oricărei aplicații web.

aplicații atât de populare precum WordPress, Drupal etc. includeți un program de e-mail numit “PHPMailer” pentru trimiterea de e-mailuri.

pașii pentru configurarea PHPMailer pot să nu fie intuitivi pentru mulți proprietari de site-uri web, iar greșelile de configurare cauzează adesea eroarea “Smtp error: Failed to connect to server”.

ca parte a serviciilor noastre de asistență, ajutăm proprietarii de site-uri web să își rezolve problemele tehnice. Și, problema e-mail legate de PHPMailer este o eroare pe care o vedem de multe ori .

în acest articol, vom vedea motivele principale pentru” eroare Smtp: nu s-a reușit conectarea ” și modul în care le remediem.

ce este “eroare Smtp: nu s-a reușit conectarea la server” ?

spammerii folosesc adesea scripturi php care se conectează direct la servere la distanță și trimit mesaje spam.

pentru a apăra acest lucru, mulți furnizori de găzduire web blochează conexiunea directă de la site-uri web la servere de e-mail externe.

în astfel de servere, e-mailurile de pe site-ul web pot fi trimise numai prin propriul port de server de poștă electronică (server SMTP), la fel cum funcționează Outlook sau Windows Mail.

PHPMailer este o aplicație de e-mail care funcționează ca un client de e-mail și ajută la trimiterea de e-mailuri prin serverul SMTP.

dar, PHPMailer nu funcționează din cutie. Poate eșua din cauza restricțiilor de firewall pe server, a numelui greșit al serverului de e-mail, a portului etc. și arată eroarea:

“eroare Smtp: nu s-a reușit conectarea la server”

și, în funcție de răspunsul de la serverul de e-mail, am văzut 2 variații ale acestei erori :

SMTP ERROR: Failed to connect to server: Connection refused (111)

sau

SMTP ERROR: Failed to connect to server: Connection timed out (110)

ce cauzează eroarea SMTP: nu s-a reușit conectarea la server ?

aici, să discutăm motivele principale pentru “eroare SMTP: nu s-a reușit conectarea la server”.

restricții SMTP pe server.

serverele restricționează programele care se pot conecta direct la servere la distanță și pot trimite e-mailuri. De obicei, numai serverul de mail, utilizatorul root etc. permiteți conexiuni SMTP.

de exemplu, serverele CPanel blochează accesul la serverele SMTP externe utilizând opțiunea “restricții SMTP”.

cu această restricție, conexiunea de la PHPMailer la un server de e-mail extern nu funcționează. Conexiunea așteaptă ceva timp și în cele din urmă moare cu următoarea eroare:

2018-10-12 04:12:37 SMTP ERROR: Failed to connect to server: Connection timed out (110)SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/TroubleshootingOops! Something went wrong and we couldn't send your message.Mailer Error: SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting

restricții Firewall pe server

serverele de Mail acceptă sau resping conexiunile bazate pe anumite politici firewall.

toate serverele de mail permit conexiunea de la portul de e-mail implicit 25. Bu, t alte porturi de poștă precum 465, 587 etc. nu va fi deschis în multe servere.

pe un server cu restricții de port mail, atunci când un proprietar de site-ul încearcă să trimită e-mail folosind un server SMTP extern pe portul 465, se termină în eroare:

2018-08-28 10:33:12 Connection: Failed to connect to server. Error number 2. "Error notice: stream_socket_client(): unable to connect to ssl://mail.xyz.com:465 (Connection refused)2018-08-28 10:33:12 SMTP ERROR: Failed to connect to server: Connection refused (111)

aici, această eroare” conexiune refuzată ” înseamnă că trimiterea serverului de poștă refuză conexiunile de ieșire pe portul 465 și nu se poate conecta la serverul de poștă la distanță.

setări incorecte în PHPMailer

această eroare SMTP se poate întâmpla și dacă numele serverului de e-mail este setat incorect (cu spațiu alb suplimentar) în configurația PHPMailer. Apoi, formularul web încearcă să se conecteze la un nume nevalid și nu reușește.

eșecuri DNS

pentru ca PHPMailer să funcționeze corect, serverul de e-mail specificat în configurația sa ar trebui să aibă înregistrări dns adecvate. Când dns nu funcționează pe server, o privire în sus de pe server arată adresa IP greșită sau nici o adresă IP pentru serverul de e-mail. Din nou, asta face ca e-mailul să eșueze cu eroarea SMTP.

cum se remediază eroarea SMTP: nu s-a reușit conectarea la server

pentru ca mesajele să funcționeze cu PHPMailer, atât serverul de trimitere, cât și cel de primire trebuie să accepte conexiuni.

inginerii noștri de asistență verifică în primul rând conexiunea dintre serverele de e-mail și află dacă este un bloc de intrare sau de ieșire.

apoi, pentru a remedia eroarea de e-mail, facem modificări pe serverul care include următoarele :

  1. modificați regulile firewall-ului de pe server pentru a permite conexiunile de ieșire pe porturi precum 465.
  2. modificați restricțiile SMTP pe server. Apoi, adăugați un anumit utilizator al site-ului web la lista de utilizatori care pot face conexiuni SMTP de ieșire.
  3. Editați setările PHPMailer cum ar fi gazda, portul etc.
  4. rezoluția DNS corectă pentru serverul de mail.

concluzie

“eroare SMTP: nu s-a reușit conectarea la server” se întâmplă în principal din cauza problemelor de conectivitate a serverului de e-mail, a setărilor greșite ale portului etc. Aici, am discutat cauzele pe care inginerii noștri de asistență le văd adesea în servere și cum le remediem.

Leave a Reply