当前位置 : 主页 > 编程语言 > ruby >

Ruby Mail gem,如何编写邮件消息脚本

来源:互联网 收集:自由互联 发布时间:2021-06-23
我在具有SE Linux许可和IPtables关闭的CENTOS 5 VM上安装了testmail.rb: require 'rubygems'require 'mail'options = { :address = "mail.domain.com", :port = 466, :domain = 'otherdomain.com', :user_name = 'somedude@domain.com', :pas
我在具有SE Linux许可和IPtables关闭的CENTOS 5 VM上安装了testmail.rb:

require 'rubygems'
require 'mail'

options = { :address              => "mail.domain.com",
            :port                 => 466,
            :domain               => 'otherdomain.com',
            :user_name            => 'somedude@domain.com',
            :password             => 'topsecret',
            :authentication       => 'plain',
            :enable_starttls_auto => true  }
 Mail.defaults do
  delivery_method :smtp, options
end

 mail = Mail.new do
      from 'somedude@otherdomain.com'
        to 'admin@domain.com'
   subject 'This is a test email'
      body File.read('body.txt')
 end

puts mail.to_s

运行脚本时的结果如下:

Date: Tue, 30 Nov 2010 12:12:58 -0500
From: somedude@otherdomain.com
To: admin@domain.com
Message-ID: <4cf5309a2f074_284015c5c4de91b8270b2@apvdbs03.3rdomain.local.mail>
Subject: This is a test email
Mime-Version: 1.0
Content-Type: text/plain;
 charset=UTF-8
Content-Transfer-Encoding: 7bit

test!

“测试!”是body.txt的内容.

没有电子邮件到达发送到帐户.我们从发送到域管理员获得的smtp设置.我使用telnet成功地在未加密的端口(25)上向域发送电子邮件但是没有得到加密端口(466)的响应,可能是因为我的telnet会话未加密?

有什么方法可以看到脚本执行过程中发生的故障排除?

更新:
尝试重定向:> log.log 2>& 1,但没有提供任何其他信息.

你错过了实际发送的行.尝试添加

mail.deliver!

到你的脚本结束.

网友评论