” Smtp hiba: nem sikerült csatlakozni a kiszolgálóhoz ” – okok és javítások

manapság az e-mailek küldésének lehetősége minden webes alkalmazás alapvető követelménye.

olyan népszerű alkalmazások, mint a WordPress, a Drupal stb. tartalmazzon egy “PHPMailer” nevű levelezőprogramot az e-mailek küldéséhez.

a PHPMailer beállításának lépései sok webhelytulajdonos számára nem feltétlenül intuitívak, és a konfigurációs hibák gyakran “Smtp hiba: nem sikerült csatlakozni a kiszolgálóhoz” hibát okoznak.

Támogatási szolgáltatásaink részeként segítünk a webhelytulajdonosoknak technikai problémáik megoldásában. A Phpmailerrel kapcsolatos levelezési probléma olyan hiba, amelyet gyakran látunk .

ebben a cikkben az “Smtp hiba: nem sikerült csatlakozni” fő okait és a javításuk módját fogjuk látni.

mi az “Smtp hiba: nem sikerült csatlakozni a szerverhez” ?

a spamküldők gyakran használnak php szkripteket, amelyek közvetlenül kapcsolódnak a távoli szerverekhez és spam leveleket küldenek.

ennek védelme érdekében sok webtárhely-szolgáltató blokkolja a közvetlen kapcsolatot a webhelyekről a külső levelezőszerverekre.

ilyen szervereken a webhelyről érkező leveleket csak a saját levelezőszerver (SMTP szerver) portján keresztül lehet elküldeni, csakúgy, mint az Outlook vagy a Windows Mail működését.

PHPMailer egy mail alkalmazás, amely úgy működik, mint egy mail kliens, és segít, hogy küldjön e-mailt SMTP szerveren keresztül.

de a PHPMailer nem működik a dobozból. Meghibásodhat a szerver tűzfal-korlátozásai, a rossz levelezőszerver neve, port stb.

“Smtp hiba: nem sikerült csatlakozni a kiszolgálóhoz”

és a levelezőszerver válaszától függően a hiba 2 változatát láttuk :

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

vagy

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

mi okozza az SMTP hibát: nem sikerült csatlakozni a kiszolgálóhoz ?

itt beszéljük meg az “SMTP hiba: nem sikerült csatlakozni a szerverhez”fő okait.

SMTP-korlátozások a kiszolgálón.

a kiszolgálók korlátozzák azokat a programokat, amelyek közvetlenül kapcsolódhatnak a távoli kiszolgálókhoz és leveleket küldhetnek. Általában csak levelezőszerver, root felhasználó stb. SMTP-kapcsolatok engedélyezése.

például a CPanel-kiszolgálók blokkolják a külső SMTP-kiszolgálókhoz való hozzáférést az “SMTP-korlátozások” opcióval.

ezzel a korlátozással a kapcsolat a PHPMailer-től egy külső levelezőszerverhez nem működik. A kapcsolat várjon egy ideig, majd végül meghal a következő hibával:

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

Tűzfalkorlátozások a kiszolgálón

a levelezőszerverek bizonyos tűzfalszabályok alapján elfogadják vagy elutasítják a kapcsolatokat.

minden levelezőszerver engedélyezi a kapcsolatot Az alapértelmezett 25-ös levelezési portról. Bu, t más postai portok, például 465, 587 stb. nem lesz nyitva sok szerveren.

a levelezési portra vonatkozó korlátozásokkal rendelkező kiszolgálón, amikor egy webhelytulajdonos egy külső smtp-kiszolgálóval próbál levelet küldeni a 465-ös porton, az hiba:

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)

itt ez a” kapcsolat megtagadva ” hiba azt jelenti, hogy a levelezőszerver küldése megtagadja a kimenő kapcsolatokat a 465-ös porton, és nem tud csatlakozni a távoli levelezőszerverhez.

helytelen beállítások a Phpmailerben

ez az SMTP-hiba akkor is előfordulhat, ha a levelezőszerver neve helytelenül van beállítva (további szóközökkel) a PHPMailer konfigurációjában. Ezután a webes űrlap megpróbál csatlakozni egy érvénytelen névhez, de nem sikerül.

DNS hibák

a PHPMailer megfelelő működéséhez a konfigurációjában megadott levelezőszervernek megfelelő dns-rekordokkal kell rendelkeznie. Ha a dns nem működik a kiszolgálón, a kiszolgálóról történő keresés rossz IP-címet mutat, vagy nincs IP-cím a levelezőszerver számára. Ismét ez okozza a mail sikertelen SMTP hiba.

az SMTP-hiba javítása: nem sikerült csatlakozni a kiszolgálóhoz

ha a levelek a Phpmailerrel működnek, mind a küldő, mind a fogadó kiszolgálónak el kell fogadnia a kapcsolatokat.

támogató mérnökeink elsősorban a levelezőszerverek közötti kapcsolatot ellenőrzik, és megállapítják, hogy bejövő vagy kimenő blokkról van-e szó.

ezután a levelezési hiba kijavításához a következő módosításokat hajtjuk végre a kiszolgálón :

  1. módosítsa a kiszolgáló tűzfalszabályait, hogy engedélyezze a kimenő kapcsolatokat olyan portokon, mint a 465.
  2. módosítsa a kiszolgáló SMTP-korlátozásait. Ezután adjon hozzá egy adott webhelyfelhasználót azon felhasználók listájához, akik kimenő SMTP-kapcsolatokat hozhatnak létre.
  3. Szerkessze a PHPMailer beállításait, például a gazdagépet, a portot stb.
  4. helyes DNS-felbontás a levelezőszerver számára.

következtetés

“SMTP hiba: nem sikerült csatlakozni a szerverhez” elsősorban a levelezőszerver csatlakozási problémái, a rossz portbeállítások stb. Itt megvitattuk azokat az okokat, amelyeket támogató mérnökeink gyakran látnak a szerverekben, és hogyan javítjuk őket.

Leave a Reply