News:

Bored?  Looking to kill some time?  Want to chat with other SMF users?  Join us in IRC chat or Discord

Main Menu

Forumdan e-posta göndermenin püf noktaları

Started by Elmacik, November 21, 2006, 05:49:45 PM

Previous topic - Next topic

Elmacik

Biliyorsunuz SMF mail göndermek için size iki seçenek sunar.
(Bu seçenekleri SMF 1.0.x kullananlar burada bulabilirler: Yönetim -> Seçenekler ve Opsiyonlar
SMF 1.1.x kullananlar burada bulabilirler: Yönetim -> Sunucu ayarları -> Temel ayarlar)

Bunlardan birisi standart bir PHP fonksiyonu olan mail() dir.
Bu fonksiyon sendmail ile mesajlarınızı ana sunucuyu kullanarak gönderir.
Oldukça hızlı bir yöntemdir. Ancak sunucunun yoğunluğuna göre cevap vermesi uzun sürebilir.
Yani eğer sunucunuz çok yoğunsa bir maili bir kaç saat sonra gönderebilir.
Hatta bazen hiç göndermeyebilir. Gönderdiği zaman da bazı gelişmiş mail sunucularında "spam", "junk" gibi klasörlere gidebilir ve kullanıcı "inbox" ına gitmeyebilir. Ancak belirttiğim gibi, mail göndermenin normal şartlarda en hızlı yoludur.
Bu yöntemi kullandığınızda mesaj, üyelerinize "Yönetim -> Sunucu ayarları -> Webmaster e-posta adresi" kutusuna ne yazılmışsa, o adresten gidiyormuş gibi görünecektir. Dolayısıyla, bu kutuya kendi alan adınızın uzantısıyla bir e-posta adresi girmeniz, gönderilen postaların "junk" veya "spam" klasörlerine gitme olasılığını oldukça azaltacaktır.
Bu yöntemi kullanmak için tek yapmanız gereken, "E-posta gönderim türü" olarak PHP seçmenizdir.
Eğer forumunuzdan giden e-postalarda hiç bir sorun yoksa, e-posta ayarlarınızı değiştirmeye gerek yoktur, bu yöntemi rahatlıkla kullanabilirsiniz.
Yalnız şunu da belirtmeliyim ki, eğer sunucunuzda sendmail programı yoksa veya iyi ayarlanmamışsa bu seçeneği kullanarak mesaj göndermeniz imkansızdır.

SMF'in sunduğu diğer seçenek ise SMTP seçeneğidir.
Sendmail'e göre daha yavaş bir seçenektir ancak güvenilirlik açısından daha iyidir.
Yani SMTP yöntemiyle bir mailin gönderildiği söyleniyorsa, o muhakkak gönderilmiştir. Ayrıca sendmail de olanın aksine, spam veya junk olarak gitme olasılığı düşüktür. Çünkü gerçek bir adresten mesaj gönderilmektedir. (Sendmail'de hayali bir adresten gider mesajlar)
Postalar gönderileceği zaman sunucu olarak da sizin sitenizin bulunduğu sunucu değil, SMTP adresini girdiğiniz sunucu kullanılır. Dolayısıyla mesaj gönderme sırasında forum daha az yüklenmiş olur.
Ancak eğer SMTP sunucusu olarak kullandığınız hizmet sağlayıcı sizin hostunuzdan değilse, o zaman da bu kullanıcılarınıza göre bir eksi puan olabilir. Çünkü sizin forumunuzdan giden mesajlar, sizin forumunuza ait olmayan bir e-posta adresinden gidecek. (Bu adres de sizin SMTP sunucusunda kullandığınız kendi üye adınızdır)
O yüzden eğer SMTP yöntemini kullanacaksanız, kendi alan adınızla size SMTP hizmeti sağlayabilen hostları tercih etmeniz sizin yararınıza olacaktır.
Bu yöntemi kullanmak için yapmanız gereken, "E-posta gönderim türü" alanını SMTP olarak seçmektir.
Daha sonra da onun hemen altındaki SMTP ayarlarını yapmanız gerekir.
Peki bu ayalar nedir? Oralara ne yazmamız gerekir?
- SMTP sunucusu => Buraya SMTP hizmeti aldığınız sunucunun SMTP adresini yazmalısınız.
Eğer kendi hostunuz size SMTP hizmeti sağlıyorsa ama siz sunucu adresini bilmiyorsanız, hostunuza başvurup bu bilgiyi onlardan isteyebilirsiniz.
- SMTP portu => Buraya numerik bir değer girmeniz gerekir. Bu nunumara, SMTP sunucusuna bağlanılacak portun numarasıdır. Bunu kapı numarası olarak düşünebilirsiniz :) Bu port numarasını, SMTP servis sağlayacınızdan, eğer bu sağlayıcı hostunuz ise hostunuzdan öğrenebilirsiniz. Ancak SMTP hizmet sağlayıcıları genellikle varsayılan SMTP portu olan 25 numaralı portu kullanırlar. Belki bir çoğunuz dikkat etmişsinizdir, SMT kurulduğunda bu kutuda kendiliğinden 25 yazar. Bu kutuyu boş bıraktığınızda da varsayılan port, yani 25 kullanılır.
- SMTP kullanıcı adı => Bu alana SMTP hizmet sağlayıcınızın size vermiş olduğu kullanıcı adını yazın. Genellikle bu kullanıcı adı sizin e-posta adresinizdir. (Sağlayacıdan almış olduğunuz e-posta adresi)
Diğer bazı sunucular ise kullanıcı adı olarak e-posta adresinin @ işaretinden önceki kısmını kullanırlar.
Dolayısıyla eğer SMTP kullanıcı adınızı bilmiyorsanız buraya e-posta adresinizi yazmayı deneyebilirsiniz. Örneğin [email protected] Eğer kullanıcı adının yanlış olduğuna dair hata mesajı alırsanız buraya sadece forum-posta yazmayı deneyebilirsiniz. (Yukarıdaki örneğe istinaden..)
Eğer ikisi de olmuyorsa, o zaman bu bilgiyi SMTP hizmet sağlayıcınızdan temiz etmelisiniz.
- SMTP şifesi => Bu alana SMTP şifrenizi yazmalısınız. Bu şifre genellikle sizin e-posta şifrenizdir. Dolayısıyla SMTP şifrenizi bilmiyorsanız buraya e-posta şifrenizi yazmayı deneyebilirsiniz. Eğer şifrenin hatalı olduğuna dair hata mesajı alırsanız bu bilgiyi SMTP hizmet sağlayıcınızdan isteyiniz.


Bir de forumda gezerken gördüm, yabancı bir arkadaş Googla mail (gmail)'in SMTP yöntemiyle nasıl kullanılabileceğini anlatmış. Gmail'in diğer SMTP hizmet sağlayıcılarından bir farkı var. O da giriş yaparken SSL istemesidir. Dolayısıyla normal şartlarda Google SMTP hizmetini kullanabilmeniz için sunucunuzun PHP ayarlarında openssl eklentisinin etkinleştirilmiş olması gerekir.
Yani sunucunuzdaki php.ini dosyasında bu satırın olması gerekir:
extension=php_openssl.dll
Bu, normal SMTP hizmeti sağlayan sunucular için zorunlu değildir.
Gmail SMTP hizmetini kullanarak forumunuzdan üyelerinize e-posta göndermek için yukarı bahsettiğim ayarları şu şekilde yapmanız gerekiyor:
E-posta gönderim türü = SMTP
SMTP adresi = ssl://smtp.gmail.com  (Harflerin küçük olması önemlidir.)
SMTP portu = 465
SMTP kullanıcı adı = [email protected]
SMTP kullanıcı şifresi = Gmail şifreniz.
Ancak bilmelisiniz ki Gmail'in günde SMTP relay sayısı 250'dir. Yani SMTP kullanarak Gmail ile bir günde 250'den fazla e-posta gönderemezsiniz.

SSL gerektirmeyen sunucularda ise (genellikle de gerektirmez) ayarlar genellikle şu şekilde olur:
SMTP adresi = smtp.domain.com
SMTP portu = 25
SMTP kullanıcı adı = [email protected]
SMTP şifresi = şifre


Hangi yöntemi kullanırsanız kullanın, üyelerinize tek tek veya hepsine birden e-posta göndermek için yapmanız gereken Yönetim -> Haberler ve Haber listeleri -> E-posta gönder bölümüne gelmeniz ve yönergeleri izlemenizdir.
Bir ipucu daha; buraya üyelerden birinin e-posta adresini yazmak zorunda değilsiniz. Herhangi bir kimseye de buradan e-posta gönderebilirsiniz.
Home of Elmacik

ahmetarig

Geçenlerde tüm üyelere mail atmayı denedim bir türlü beceremedim . saol valla ii oldu .

Gr@fiker

yine elmacik ve yine muhteşem bi döküman ben bu yolla maillistleri kullanıyorum ;D sırf mail göndermek için bi forum kurdu aslında aklıma microsoft ve google adreslerini kullanarak mail göndermek geldi ama 250.000 kişiye basşım belaya girer diye bişe yapmadım ;D
İ dont have a msn

Elmacik

Sakın spam yapıyor olmayasın? :)
Çünkü spam yaptığı tespit edilenlerin sunucuları bile kapanıyor.
Nasıl tespit edecekler deme, mail gönderdiğin herkese sunucu bilgileri de gidiyor :)
Home of Elmacik

Gr@fiker

abi yazdıklarıma bak bi başka forum kurdum ;D funpicden aldığım hosta kurdum ;D
İ dont have a msn

erenk_8

Sitemde sorun var hiç bi kimseye ne e-posta ne aktivasyon gönderebiliyorum smtp  yaamıyorum çünkü uzun sürüyor kendi e-postamıda yazınca hiç bi yere mail gitmiyor ne yapmam lazım sanırım bi sitede bi sorun var

iletişim : [email protected] (msn veya mail)

Hablullah

Bende mail sistemi pek iyi calismadigi için aktivasyon olayini kapattim
yukardakileri harfiyen uyguladiim ancak malesef

izmir_LEE

Arkadaşlar tüm söylenenleri aynen yerine getirmeme rağmen malesef hotmaile bir tane bile mailim gitmedi.
Diğer sunuculardan sadece iki tanesini denedim -ki birisi gmail dir- sorun yok.Ama iş hotmaile geldiği zaman mail() fonksiyonunun basireti bağlanıyor  :-\ Bu sorunu yaşamış, çözüm getirmiş olan varsa ve paylaşırsa makbule geçecek.

kaplanazmi

arkadaşlar bu smtp dediğimiz olay site mail kısmı değilmi?

ben smtp adresime www.siteadı.com/webmail den giriyorum bunu mu yazcam ???


Champion78


Elmacik

Hotmail'in SMTP adresi yok. Cunku Hotmail boyle bir hizmet saglamiyor.

Arkadaslar yaziyi tastamam okuduysaniz, olayin biraz da sunucunuzla ilgili oldugunu ve her zaman mail() fonksiyonuyla veya SMTP ile mail gondermenizin mumkun olamayabilecegini de yaziyor.
Dolayisiyla ne yaparsaniz yapin, duzgun ayarlanmis bir sendmail sistemi bulunmayan sunucularda iseniz mail gonderemezsiniz. SMTP ise yavas oldugu icin birden fazla kisiye mail gonderildiginde cevap vermeyi durdurabilir. Bu da SMTP sunucunun gucuyle ilgilidir.
Home of Elmacik


maxmur

Hocam teşekkürler bilgin icin benim sorunum hotmaile gitmemesi acaba bunun icin yardımcı olurmusun
www.iyiyiz.com iyi olanların yeri..

osenmer

hala şu spam ın tam olarak tanımını bulamadım ::) hangi e-postanın spam olduğuna nasıl karar veriliyor? koskoca siteler(örneğin hotmail reklamları vs..) üyelerine toplu mail atınca spam olmuyorda biz üyelerimize toplu mail atınca spam oluyor. ???

Gr@fiker

Quote from: osenmer on December 20, 2006, 04:27:20 AM
hala şu spam ın tam olarak tanımını bulamadım ::) hangi e-postanın spam olduğuna nasıl karar veriliyor? koskoca siteler(örneğin hotmail reklamları vs..) üyelerine toplu mail atınca spam olmuyorda biz üyelerimize toplu mail atınca spam oluyor. ???

php ile gönderirsen spam görülebilir ancak smtp yolu ile gönderirsen spam olarak görmez ;)
İ dont have a msn

maltepeli

Merhaba,

Ben 1.1 kullanırken php standart ayarı ile herkese mail atabiliyordum. Fakat 1.1.1 güncelemesini yaptıktan sonra aşağıdaki hata mesajlarını almaya başladım ve mail gitmiyor.

2: mail() [<a href='function.mail'>function.mail</a>]: Failed to connect to mailserver at "mail.onlinesistem.net" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set()
Dosya: D:\Hosting\emreajans\tievnet\mecliscafe.com\www\Sources\Subs-Post.php
Satır: 644

Sorun nedir acaba?

reyes


<iframe>Sen!!</iframe>   
 

İçimdeki Şeytanın ensesindeyim


maltepeli

Quote from: maltepeli on December 20, 2006, 05:51:56 PM
Merhaba,

Ben 1.1 kullanırken php standart ayarı ile herkese mail atabiliyordum. Fakat 1.1.1 güncelemesini yaptıktan sonra aşağıdaki hata mesajlarını almaya başladım ve mail gitmiyor.

2: mail() [<a href='function.mail'>function.mail</a>]: Failed to connect to mailserver at "mail.onlinesistem.net" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set()
Dosya: D:\Hosting\emreajans\tievnet\mecliscafe.com\www\Sources\Subs-Post.php
Satır: 644

Sorun nedir acaba?

Arkadaşlar ben bu problemi hala çözemedim? Her gönderilen maile ayrı bi hata raporu veriyor ama genelde yukardaki hata var. mail.onlinesistem.net [nofollow] de nedir onu anlayamadım? 1.1.1 in orjinalindemi var?

JacKBooT

Mükemmel bir Bilgi..Çok Teşekkür ederim.. Bende işe yaradı ve o salak karakter hatalarından da kurtulmuş oldum.. Çok Teşekkürler dostum..

HaYaLeT_07

saol dostum kendi dilimize geri dönelerim karakter sorunu yüzünden bazı harfleri kullanamıoduk..

Advertisement: