Yayınımız yeniliklerle beraber yeni sitemizden devam ediyor. Seditio.com.tr takip edin.
How to fix “smtp error: could not authenticate” in PHPMailer
PHPMailer , SMTP kimlik doğrulamasını kullanarak e-postaları güvenli ve kolay bir şekilde göndermek için harika bir araçtır.
Ancak bazen uyumsuz sunucu ayarları veya yanlış SMTP yapılandırması nedeniyle bu başarısız olabilir.
" Smtp hatası: kimlik doğrulanamadı ", e-posta göndermek için PHPmailer'ı kullanırken web sitesi sahipleri tarafından bildirilen bu tür bir sorundur.
Bu hatanın en önemli 5 nedenini birlikte inceleyelim çözelim.
Bu "smtp hatası: kimlik doğrulanamadı" hatası nedir?
Basitçe söylemek gerekirse, bu hata şöyle der: " SMTP sunucusuna bağlanmaya çalışıyorsunuz, ancak kimliğinizi doğrulayamıyor ".
Yani şu anlama gelebilir,
Burada sorun ne? Hızlıca bir göz atalım.
Phpmailer'da "smtp hatası: kimlik doğrulanamadı" hatasının Nedenleri ve Düzeltmeleri
1) Yanlış SMTP kimlik doğrulama ayrıntıları
Her posta sunucusu, kullanıcıları bağlanıp e-posta göndermeden önce doğrulamak için bir kimlik doğrulama sistemi kullanır.
Komut dosyanızdan bir e-posta gönderdiğinizde, posta sunucusu kullanıcıyı hesabın kullanıcı adı ve şifresiyle tanımlamaya çalışır.
Bu kimlik doğrulama başarısız olursa, posta sunucusu bağlantıyı reddeder ve kullanıcılar " SMTP Error: Could not authenticate " hatasını alır .
Çözüm
Posta komut dosyasında doğru kullanıcı adı ve şifrenin verildiğinden emin olacağız.
Varsayılan e-posta hesapları olması durumunda, uygulamada tam kullanıcı adı (kullanıcı@etkialanı.com) verilmelidir.
Ayrıca, şifre yakın zamanda değiştirilmişse, e-posta uygulamasında güncellenmelidir.
2) Yanlış SMTP bağlantı noktası ve SMTP Ana Bilgisayarı
Kullanıcılar , e-posta uygulamasının “ $ mail-> Host” alanına posta sunucusu ayrıntılarını girmelidir .
Örneğin, posta sunucunuz olarak Gmail kullanıyorsanız, ana bilgisayar adı " smtp.gmail.com " olmalıdır .
Bazen, ana bilgisayar adındaki bir yazım hatası veya etkin olmayan bir posta sunucusu bu hataya neden olur.
Benzer şekilde, bağlantı noktası numaraları için varsayılan SMTP bağlantı noktası 25'tir, ancak bazı posta sunucuları istenmeyen postaları önlemek için 587 gibi özel bağlantı noktaları kullanır.
Ayrıca, bazı posta sunucuları yalnızca SSL bağlantı noktası 465 üzerinden e-postalara izin verecek şekilde yapılandırılacaktır.
Bazı e-posta sağlayıcılarının güvenlik duvarı kurallarını kullanarak SMTP bağlantı noktalarına erişimi kısıtlaması da mümkündür.
SMTP ayarlarında veya güvenlik duvarı kısıtlamalarında yanlış bağlantı noktası girişi, e-posta teslim hatalarına neden olabilir.
Çözüm
Posta sunucusunun DNS bağlantısını komut ile sağlayacağız.
mail.domain.com
Ayrıca, doğru SMTP bağlantı noktasını belirlemek ve SMTP bağlantı noktasına bağlantıyı onaylamak için şu komutu kullanıyoruz:
telnet alan.com 25
Uygulamadaki SMTP ayarlarını çapraz kontrol ediyor ve doğru SMTP ana bilgisayarının ve bağlantı noktasının kullanıldığından emin oluyoruz.
Herhangi bir güvenlik duvarı kısıtlaması bulursak, IP güvenlik duvarında beyaz listeye alınmalıdır.
3) SMTP şifreleme ayarları
Güvenli e-posta iletimi için çoğu kullanıcı şifrelemeli SMTP'yi tercih eder. SSL ve TLS, kullanılan 2 şifreleme protokolüdür.
Ancak bazı posta sunucularında SSL / TLS desteği etkinleştirilemeyebilir veya mevcut SSL sertifikasının süresi dolmuş olabilir.
Ya kullanıcılar uygulamalarında şifreleme belirtirse? Sonuç " smtp hatası: kimlik doğrulanamadı " hatasıdır.
Çözüm
Apache ve PHP düzgün ile sunucuda yapılandırılmış olduğundan emin olun ' mod_ssl ' ve ' openssl ' böylece SSL sunucu üzerinde çalışabilmesi.
Ayrıca şu komutu kullanarak posta sunucusunun SSL sertifikasının geçerliliğini de doğrulayacağız:
openssl s_client -connect mail.example.com:25 -starttls smtp
Dolayısıyla buradaki çözüm, sunucu için SSL'yi doğru şekilde yapılandırmak veya SMTP ayarlarında kullanılan şifrelemeyi kaldırmaktır.
4) Google, güvenli olmayan erişimi engeller
Gmail, sıkı güvenlik kısıtlamaları uygular.
Bir uygulama bu güvenlik standartlarını karşılamıyorsa, bu uygulamalara izinsiz girilmesi daha kolay olduğu için erişimi engelleyebilir.
Gmail sunucusunda kimlik doğrulaması yapan kullanıcılar " smtp hatası: kimlik doğrulaması yapılamadı " hatasını alır çünkü Google, kullanıcı adı ve şifre girişini güvensiz olarak kabul eder.
Çözüm
İdeal olarak, uygulamayı Google standartlarını karşılayacak şekilde yeniden yapılandırıyoruz. Bu mümkün değilse, web sitesi sahiplerinin aşağıdaki adımları kullanarak güvenlik kısıtlamalarını gevşetmelerine yardımcı olacağız.
5) Süresi Dolan Parola
Bu arada bir olabilir.
Bazı sunucular şifreleri otomatik olarak sona erdirecek şekilde ayarlanmıştır ve uygulama yöneticileri bunları zamanında güncellemeyi unutur.
Uygulama bağlanmaya çalıştığında, posta sunucusu şifreyi doğrulayamadı.
Sonuç " smtp hatası: kimlik doğrulanamadı " hatasıdır.
Çözüm
Bu genellikle hesap sahibi şifrenin sona ermesiyle ilgili bildirim e-postasını kaçırdığında gerçekleşir.
Bu gibi durumlarda, şifreyi sıfırlıyoruz ve ayrıca e-posta uygulamasında güncelliyoruz.
Ayrıca bildirim e-postasının doğru ayarlandığından emin oluruz ve bazı durumlarda posta kutusu için ayarlanan şifre son kullanma tarihini kaldırırız.
Sonuç
" Smtp hatası: kimlik doğrulaması yapılamadı ", kullanıcılar SMTP kimlik doğrulamasını kullanarak PHPMailer aracılığıyla e-posta gönderirken yaygın bir hatadır. Bu hata, uygulama posta sunucusuna bir SMTP bağlantısı kuramadığında ortaya çıkar. Bugün, bu hatanın en önemli 5 nedenini ve bunları nasıl düzelttiğini gördük .