Anasayfa » Forum

php smtp mail gönderememe  

  RSS
suat kulgi
(@kulgi)
Üye

merhaba,

günlerdir arayıp çözüme ulaşamadığım bir sorun var ve internette bu konu ile ilgili araştırma yapıp forumları okuduğumda genelde hep aynı problemlerin gözlemlendiğini fakat bir sonuca ulaşılamadığını gördüm.

Konu şu ki, php mailer ile posta gönderememe.

SMTP -> ERROR: Failed to connect to server: (0)  hatası almak.

Danıştığım kişiler kodlarla uğraşıp 587 ve 564 portları ssl/tls le hep aynı yerlere yoğunlaştı sorunu çözemedik. Bu sorunu hostingi başka sunucuya taşıdıktan sonra yaşamaya başladım.

Fakat kendimce en azından sorunun nereden kaynaklandığını bir kaç deneme yanılma yöntemiyle tespit ettim. Sonuca ulaşamadım ama en azından bu sorunu yaşayanlar adına çözüme ulaşmak ve hem de sorunu çözmek amacıyla burada konu açmaya karar verdim.

Yaptığım testler sonucu bu sorunun php sürümü ile alakalı olduğunu gördüm. PHP 5.2.17 windows platformda plesk panel üzerinden çalıştırdığım zaman smtp mail gönderme fonksiyonu sorunsuz çalışıyor 25 465 ve 587 portlarda gönderebiliyorum. Fakat 5.6.40 ve üstü ( şu an php 7.2 kullanıyorum ) kullandığım zaman smtp 587 ve 465 portlarda mail gönderemiyorum. Yalnızca 25 portu çalışıyor. Bu konuda yardımlarınızı rica ediyorum.

Alıntı
Gönderildi : 17/03/2019 11:13
Cenker Çetin
(@cenkercetin)
Üye Yönetici
Gönderen: suat kulgi

merhaba,

günlerdir arayıp çözüme ulaşamadığım bir sorun var ve internette bu konu ile ilgili araştırma yapıp forumları okuduğumda genelde hep aynı problemlerin gözlemlendiğini fakat bir sonuca ulaşılamadığını gördüm.

Konu şu ki, php mailer ile posta gönderememe.

SMTP -> ERROR: Failed to connect to server: (0)  hatası almak.

Danıştığım kişiler kodlarla uğraşıp 587 ve 564 portları ssl/tls le hep aynı yerlere yoğunlaştı sorunu çözemedik. Bu sorunu hostingi başka sunucuya taşıdıktan sonra yaşamaya başladım.

Fakat kendimce en azından sorunun nereden kaynaklandığını bir kaç deneme yanılma yöntemiyle tespit ettim. Sonuca ulaşamadım ama en azından bu sorunu yaşayanlar adına çözüme ulaşmak ve hem de sorunu çözmek amacıyla burada konu açmaya karar verdim.

Yaptığım testler sonucu bu sorunun php sürümü ile alakalı olduğunu gördüm. PHP 5.2.17 windows platformda plesk panel üzerinden çalıştırdığım zaman smtp mail gönderme fonksiyonu sorunsuz çalışıyor 25 465 ve 587 portlarda gönderebiliyorum. Fakat 5.6.40 ve üstü ( şu an php 7.2 kullanıyorum ) kullandığım zaman smtp 587 ve 465 portlarda mail gönderemiyorum. Yalnızca 25 portu çalışıyor. Bu konuda yardımlarınızı rica ediyorum.

Selamlar

Kullanmış olduğunuz host üzerinde smtp kontrolü yaptınız mı? yani sizin yazmış olduğunuz kod ile değil bu bileşenin doğru çalıştığına dair bir kanıtınız var mı elinizde? eğer bu yok ise hosting firması ile iletişime geçebilirsiniz.

php -r "print_r(get_loaded_extensions());"

Bu komut ile çalışan bileşenleri görüntüleyebilirsiniz.Ayrıca;

dpkg -l | grep php5

komut ile de versiyonlarına kadar görüntüleyebilirsiniz.

Cenker Çetin
Bilgi Teknolojileri Danışmanı

CevapAlıntı
Gönderildi : 17/03/2019 20:58
suat kulgi
(@kulgi)
Üye
Gönderen: Cenker Çetin
Gönderen: suat kulgi

merhaba,

günlerdir arayıp çözüme ulaşamadığım bir sorun var ve internette bu konu ile ilgili araştırma yapıp forumları okuduğumda genelde hep aynı problemlerin gözlemlendiğini fakat bir sonuca ulaşılamadığını gördüm.

Konu şu ki, php mailer ile posta gönderememe.

SMTP -> ERROR: Failed to connect to server: (0)  hatası almak.

Danıştığım kişiler kodlarla uğraşıp 587 ve 564 portları ssl/tls le hep aynı yerlere yoğunlaştı sorunu çözemedik. Bu sorunu hostingi başka sunucuya taşıdıktan sonra yaşamaya başladım.

Fakat kendimce en azından sorunun nereden kaynaklandığını bir kaç deneme yanılma yöntemiyle tespit ettim. Sonuca ulaşamadım ama en azından bu sorunu yaşayanlar adına çözüme ulaşmak ve hem de sorunu çözmek amacıyla burada konu açmaya karar verdim.

Yaptığım testler sonucu bu sorunun php sürümü ile alakalı olduğunu gördüm. PHP 5.2.17 windows platformda plesk panel üzerinden çalıştırdığım zaman smtp mail gönderme fonksiyonu sorunsuz çalışıyor 25 465 ve 587 portlarda gönderebiliyorum. Fakat 5.6.40 ve üstü ( şu an php 7.2 kullanıyorum ) kullandığım zaman smtp 587 ve 465 portlarda mail gönderemiyorum. Yalnızca 25 portu çalışıyor. Bu konuda yardımlarınızı rica ediyorum.

Selamlar

Kullanmış olduğunuz host üzerinde smtp kontrolü yaptınız mı? yani sizin yazmış olduğunuz kod ile değil bu bileşenin doğru çalıştığına dair bir kanıtınız var mı elinizde? eğer bu yok ise hosting firması ile iletişime geçebilirsiniz.

php -r "print_r(get_loaded_extensions());"

Bu komut ile çalışan bileşenleri görüntüleyebilirsiniz.Ayrıca;

dpkg -l | grep php5

komut ile de versiyonlarına kadar görüntüleyebilirsiniz.

domaini kendi dedicated sunucumda barındırıyorum.

belirttiğiniz şekilde çalışan bileşenler şunlar.

Array ( [0] => Core [1] => bcmath [2] => calendar [3] => ctype [4] => date [5] => filter [6] => hash [7] => iconv [8] => json [9] => SPL [10] => pcre [11] => readline [12] => Reflection [13] => session [14] => standard [15] => mysqlnd [16] => tokenizer [17] => zip [18] => zlib [19] => libxml [20] => dom [21] => PDO [22] => openssl [23] => SimpleXML [24] => xml [25] => wddx [26] => xmlreader [27] => xmlwriter [28] => cgi-fcgi [29] => curl [30] => gd [31] => gettext [32] => imap [33] => mbstring [34] => mysqli [35] => Phar [36] => pdo_mysql [37] => pdo_sqlite [38] => sockets [39] => sqlite3 [40] => xsl [41] => sqlsrv [42] => pdo_sqlsrv [43] => ionCube Loader [44] => Zend OPcache )

 

 

CevapAlıntı
Gönderildi : 17/03/2019 22:08
Cenker Çetin
(@cenkercetin)
Üye Yönetici

Selamlar,

Aşağıda paylaşacağım kaynaklar ile mail fonksiyonunuzu kontrol edebilirsiniz.

http://php.net/manual/en/refs.remote.mail.php

http://php.net/manual/en/ref.mail.php

Bir de PHPMAILER'i göremedim. Aşağıdaki linkten indirip deneyebilirsiniz.

https://github.com/PHPMailer/PHPMailer/releases

include 'class.phpmailer.php';
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPAuth = true;
$mail->Host = 'smtp.sitem.com';
$mail->Port = 587;
$mail->Username = 'benim@adresim.com';
$mail->Password = 'çokgizlişifre';
$mail->SetFrom($mail->Username, 'Benim Adım');
$mail->AddAddress('alici@adresi.com', 'Alıcının Adı');
$mail->CharSet = 'UTF-8';
$mail->Subject = 'Mail Başlığı';
$mail->MsgHTML('Mailin içeriği!');
if($mail->Send()) {
    echo 'Mail gönderildi!';
} else {
    echo 'Mail gönderilirken bir hata oluştu: ' . $mail->ErrorInfo;
}

Cenker Çetin
Bilgi Teknolojileri Danışmanı

CevapAlıntı
Gönderildi : 18/03/2019 08:59
Zülfü Mehmet ÖZÇİFÇİ
(@zulfumehmetozcifci)
Üye

SMTP olarak yandex yada gmail deki hesaplarınızı dener misiniz? Kullandığınız panelden smtp port bilgilerini ve adresi barındıran bilgilerin olması lazım

Örneğin Cpnalede:

mailler

Yukardaki gibi bilgiler mevcut. Kontrol edip o bilgileri kullanabilir misiniz?

CevapAlıntı
Gönderildi : 18/03/2019 11:14
suat kulgi
(@kulgi)
Üye
Gönderen: Zülfü Mehmet ÖZÇİFÇİ

SMTP olarak yandex yada gmail deki hesaplarınızı dener misiniz? Kullandığınız panelden smtp port bilgilerini ve adresi barındıran bilgilerin olması lazım

Örneğin Cpnalede:

mailler

Yukardaki gibi bilgiler mevcut. Kontrol edip o bilgileri kullanabilir misiniz?

yandex.com 587 ve yandex.com.tr 465 bunlar denendi. sorun port ve SMTP kodlarında değil. php sürümüyle alakalı. plesk panelde php fastcgi 5.2.17 eski sürümünde kodlar sorunsuz mail gönderiyor. 5.6.40 ve üzeri php sürümleri kullandığımızda ise sadece 25 portu ile gönderiliyor. 587 tls ve 465 ssl ile gönderimlerde SMTP server bağlantı hatası veriyor. PHP 5.6.40 sürümü ve üzzerinde 25 portu hariç mail gönderilmiyor.

CevapAlıntı
Gönderildi : 18/03/2019 12:57
Ali UYSAL
(@aliuysal)
Kıdemli Üye Forum Yöneticisi

Söylediğiniz php sürümü çok eski, büyük ihtimalle kullanıdığınız PHPMailer'de eski versiyon.

https://github.com/PHPMailer/PHPMailer

Burada ki yeni PHPMailer versiyonu ile test etmenizde fayda var.

Dijital dönüşüm başlıyor...
WinFlow e-Fatura Onay Akış Süreç Yazılımı
Android El Terminali

CevapAlıntı
Gönderildi : 18/03/2019 17:06
suat kulgi
(@kulgi)
Üye

şu an 7.2.6 php sürümünü kullanıyorum.  Yukarıdaki verdiğiniz linklerdeki phpmailer güncel sürümünüde denedik maalesef sonuç aynı.

CevapAlıntı
Gönderildi : 18/03/2019 17:09
Cenker Çetin
(@cenkercetin)
Üye Yönetici

peki php debug açtığınızda aldığınız hata nedir? sunucu size hangi hata ile dönüyor? logları paylaşabilir misiniz?

Cenker Çetin
Bilgi Teknolojileri Danışmanı

CevapAlıntı
Gönderildi : 19/03/2019 09:28
Paylaş:

Lütfen Giriş yap yada Kayıt ol