我正在使用Rails(2.3.5)應用程序中的Ruby(1.8.6)應用程序,其中我正在使用Gmail來傳遞電子郵件。我想切換到使用延遲作業發送消息。爲什麼延遲作業不能用於我的ActionMailer生產設置?
我在我的開發環境中發送了延遲的作業,但是當我部署到我的生產服務器並嘗試郵件被拒絕並且在我的delayed_jobs表中顯示錯誤時:530 5.7.0 Must issue a STARTTLS command first. i25sm12946175anh.17.
我以前見過此錯誤(當我在我的配置中沒有啓用TLS)。但是在我開始使用delayed_jobs之前它正在工作。這是我的郵件配置:
ActionMailer::Base.smtp_settings = {
:enable_starttls_auto => true,
:address => 'smtp.gmail.com',
:port => 587,
:domain => 'example.com',
:authentication => :plain,
:user_name => '[email protected]',
:password => 'password'
}
任何有關這個問題的幫助是非常感謝。
更新:該應用程序實際上運行在稀土紅寶石1.8.7。所以也許延遲工作是使用服務器上安裝的常規ruby解釋器(1.8.6)。但是,如何獲得延遲工作來使用我的REE安裝?我怎麼知道什麼是使用什麼版本的Ruby。
您是否運行delayed_job工作? – 2010-08-30 23:04:25
是的,我是。它試圖發送它們,它們被gmail拒絕。 – Sam 2010-08-30 23:53:58
我將Ruby EE設置爲我的默認設置,並且發送的電子郵件沒有錯誤。但現在我得到重複。 :( – Sam 2010-08-30 23:55:15