今天與phpmailer/sendmail/mail()奮戰了一整天

話說,最近在開發一些網站小工具,要使用到電子郵件的功能,所以就需要進行一些開發。

之前我用過phpmailer去連接Google發信,不過只要發信的頻率高了一點,Gmail就會就行停權。而且就算我分散在10個Gmail帳號下,還是三不五時停權,連停權的原因是什麼都不會知道,最後只好放棄。

為什麼我說Gmail會停權呢?當時在發開phpmailer透過gmail來發信的動作,我原本是要透過機器人程式來執行的,好啦!我承認,我是要拿來發廣告信的,不過效果太爛,我這個案子就沒有繼續往下去。

原來我的印像還留在之前,phpmailer除了本來就透過pop3和smtp進行發信,今天去看文件又發現,可以只接調用sendmail和php中的mail()涵式來發。

我自己的主機上,有安裝sendmail,今天用自己主機調用sendmail來發信非常的順,再使用國外主機進行發信,有時可以收到信,但是常常會出現掉信的情況,也就是說訊息出現寄信完成,結果卻怎麼也收不到信。

再來,我說說Server Zoo,在cpanel中有寫sendmail有支援,透過php程式去連結sendmail,結果直接出現錯誤根本無法使用,而且ServerZoo提供的程式範例碼,還是3年前的版本,連套用都沒有辦法正常運作,最後在ServerZoo上只好用無敵絕招,直接使用php內建的mail涵式來發信。

用phpmailer調用php的mail()涵式有一個我覺得很重要的功能缺失,就是不能CC副本抄送,或是BCC的密件副本。

老實講,只要不掉信,用什麼方式來發信,都是可以的,各位相信嗎?我用phpmailer連結gmail來發信,竟然也會掉信。

這樣,誰還敢相信Gmail的功能呢?最近又收到Google的一些動作,這些之後有空再來談。

20140323 我去查我三年前寫的程式碼,那時phpmail就有提供sendmail和php mail()函數的範例,是我自己在網路上看到phpmailer連結google的介紹,而乎略了其他的程式,真的是知其然而不知其所以然。

另外,我更新一件事,以前我以為中華電信固1動態8IP的ADSL,那個IP是動態區裡面的模擬靜態,就是說IP反解出來,乃然會有dynamic字樣,而台灣的免費email系統,或是幾個大的email系統,只要看到dynamic字樣,就直接擋信,我自己在架spam伺服器時,我也是使用這個規則,因為動態區的ip,就是一般的使用者,理論上就算發了信,也收不到信,所以偏向垃圾信。

但是我現在用的是光世代ADSL100M/20M,現在配發這個固定IP卻在反解時沒有dymanic字樣。我原本以為Server從公司搬回來之後,就再也不會收到server狀態的通知信;結果不然,一樣收的到信,現在才知道,是因為IP反解的部份已經沒有dynamic字樣。現在只能說,中華電信請不要三不五時亂動我的IP,感恩。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *