2/22/2007

使用 GMail SMTP 來幫你寄信

ActionMailer 自從上次介紹了 sendmail 寄信後,好像一直沒介紹如何用 smtp 來寄信。不過由於這個部分聖經本以及 Rails Wiki都介紹的非常詳細,我就請大家多看看書好了。這裡直接介紹如何使用 Gmail 的 SMTP Server 幫你寄信。

Anatol Pomozov 感嘆 Ruby 的標準處理 SMTP的 Lib Net:SMTP 一直不支援 TLS,於是他決定自己來寫。他寫了一個 tls 的 lib 叫做 smtp_tls.rb 。讓我們可以直接使用支援 TLS 的 SMTP Server 來幫我們寄信。

code 內容因為 license 不明,請大家直接去原作者出處來看。使用方是就是將這段 code 放入任何一個 Rails 讀的到的地方。然後在 config/enviroment.rb 裡面加入
require ‘smtp_tls’

最後在 config/enviroments/xxxxx.rb 裡面寫相關 Gmail 設定
ActionMailer::Base.server_settings = {
:address => "smtp.gmail.com",
:port => "587",
:domain => "localhost.localdomain",
:authentication => :plain,
:user_name => "你的Gmail account",
:password => "你的Gmail Password"
}


如此即可。

沒有留言: