İçerikler


    Php ile STMP Mail Gönderimi

    09.09.2013 00:09

    Bir çok hosting firmasında olduğu gibi bizim firmamızda da phpmail() fonksiyonu kapalı durumdadır. Bu fonksiyonun kapalı tutulmasının nedeni, phpmail() fonksiyonunda hiçbir doğrulama olmadan direk olarak mail gönderilebilmesidir. Doğrulama yapılmadan mail gönderimi yapıldığı taktirde spam mail gönderimini engellemek mümkün değildir.Spam maili ve ip adreslerini kara listelere girmesini engellemek için sunucularda mail() ve phpmail() fonksiyonunun kapalı tutulması ve STMP üzerinden mail gönderilmesi gerekir.

    Şimdi php üzerinden Smtp bağlantısı yaparak nasıl mail gönderilir bu konuya değinelim. Bunun için PHPMailer kütüphanesini kullanacağız.

    PHPMailer kütüphanesini buradan indirebilirsiniz.

    İndirdiğimiz kütüphanin içerisindeki class.phpmailer.php, class.smtp.php ve class.pop3.php dosyalarını mail formumuz ile aynı dizine atıyoruz.

    Mail formumuzun kodları:

        require("class.phpmailer.php");
        $mail = new PHPMailer();
        $mail->IsSMTP();
        $mail->SMTPDebug = 1; // hata ayiklama: 1 = hata ve mesaj, 2 = sadece mesaj
        $mail->SMTPAuth = true;
        $mail->SMTPSecure = 'ssl'; // Güvenli baglanti için ssl normal baglanti için tls olmalıdır.
        $mail->Host = "mail.siteismi.com"; // Mail sunucu ismi girilmelidir.
        $mail->Port = 465; // Güvenli baglantı için 465 Normal baglantı için 587
        $mail->IsHTML(true);
        $mail->SetLanguage("tr", "phpmailer/language");
        $mail->CharSet ="utf-8";
        $mail->Username = "isim@siteismi.com"; // Mail adresimizin kullanicı adı
        $mail->Password = "PASSWORD"; // Mail adresimizin şifresi
        $mail->SetFrom("isim@siteismi.com", "Isim"); // Mail gönderildiğinde görülecek olan isim
        $mail->AddAddress("ahmetmakal@msn.com"); // Gönderilecek adres - Alıcı
        $mail->Subject = "Mesaj Basligi"; // Konu başlığı
        $mail->Body = "Mesaj icerigi"; // Mailin içeriği
        if(!$mail->Send()){
        echo "Mailer Error: ".$mail->ErrorInfo;
        } else {
        echo "Mesaj gonderildi";
        }

    Doldurulması gereken alanları yukarıdaki kodların sonuna bigilendirme olarak yazdım. Yukarıdaki ayarlar ile sunucunuzun SMTP servisini kullanarak sorunsuz mail gönderimi yapabilirsiniz.

    Şimdi ücretsiz mail hizmeti veren Gmail ve Yandex için gereken ayarları görelim.

    Yandex Smtp Ayarları:

        $mail->SMTPSecure = 'tls';
        $mail->Host = 'smtp.yandex.com';
        $mail->Port = 587;

    Gmail Smtp Ayarları:

        $mail->SMTPSecure = 'ssl';
        $mail->Host = 'smtp.gmail.com';
        $mail->Port = 465;

    Hazır Scriptler İçin Smtp Mail Ayarları

    Gelelim hazır yazılımlar için Smtp ayarlarının nasıl yapılması gerektiğine. Hazır yazılımların bazılarında PHPMailer kütüphanesini bulunur ve arkada çalışır.SMTP ayarlarını da kullandığınız yazılımın arayüzünden yapabilirsiniz. Örnek olarak bazı yazılımlardaki ayarları aşağıda iletiyorum.

    WordPress için WP Mail SMTP eklentisini kurmamız gerekiyor.

        Ayarlar > Email bölümünden aşağıdaki ayarları uygulayınız.
        From Email: isim@siteismi.com
        From Name: İsim
        Mailer: Send all WordPress emails via SMTP.
        SMTP Host: localhost veya sunucu hostname'si (hostname' i tarafımızdan öğrenebilirsiniz)
        SMTP Port: 465
        Encryption: Use SSL encryption.
        Authentication: Yes: Use SMTP authentication.
        Username: isim@siteismi.com
        Password: mailsifresi

    vBulletin İçin Smtp Ayarları:

        vBulletin Seçenekler > E-Mail ayarları
        Buradan Emailleri SMTP-Serveri aracılığı ile gönder seçiyoruz.
        SMTP-Serveri: mail.siteadresiniz.com
        SMTP Portu: 465
        SMTP Kullanıcı Adı: isim@siteismi.com
        SMTP Şifresi: Email adresinizin şifresi
        SMTP-Serverine garantili bağlanma: SSL

    SMF İçin Smtp Ayarları:

        Ayarlara ulaşabilmek için Yönetim Masası > Bakım > E=Posta kısmına giriyoruz.
        E-Posta türü: SMTP
        SMTP sunucusu: ssl://localhost yada ssl://mail.siteadresiniz.com
        SMTP bağlantı noktası: 465
        SMTP kullanıcı adı: isim@siteismi.com
        SMTP şifresi: Email adresinizin şifresi

    OpenCart İçin Smtp Ayarları:

        Ayarlara ulaşabilmek için System > Settings > Mail kısmına giriyoruz.
        Mail Protocol: SMTP
        SMTP Host: ssl://localhost yada ssl://mail.siteadresiniz.com
        SMTP Username: isim@siteismi.com
        SMTP Password: Email adresinizin şifresi
        SMTP Port: 465

    Her yazılımın kendine özgü SMTP ayarları vardır. Yukarıdaki örnekleri baz alarak kullandığınız yazılımın SMTP mail ayarlarını rahatlıkla yapabilirsiniz.

    Yorumlar

    Hiç Yorum Yapılmamış


    Yorum Ekleyin

    E-Bülten Aboneliği

    E-Bültenimize kayıt olun, indirimlerden ve fırsatlardan önce siz haberdar olun..