postfix配置rails接收邮件

  • Post author:
  • Post category:其他


用Rails和Postfix处理邮件接收的方法

这里写的是,Postfix的使用方法。

1.Postfix的安装

aptitude install postfix

2.处理邮件接收的代码写在app/models的下面。

class KaeruMailman < ActionMailer::Base

def receive(email)

end

end

3./etc/postfix/master.cf的最后,添加以下内容。

kaeruspoon-mailman unix – n n – – pipe

flags= user=tsukasa argv=/usr/bin/ruby /var/www/rails/kaeruspoon/script/runner -e production KaeruMailman.receive(STDIN.read)

user设置为运行Rails的用户。KaeruMailman的recieve是用instance方法来定义,但是在这里用class方法来写。内部,instance随意创建,被称为recieve方法。

4./etc/postfix/main.cf的最后,添加以下内容。

transport_maps = hash:/etc/postfix/transport

virtual_mailbox_domains = kaeruspoon.net

用受理邮件接收的地址,进行用户认证的情况下,需要让local_recipient_maps无效(因为拒绝了UNIX用户之外的邮箱地址)。

local_recipient_maps =

5.在/etc/postfix/transport里(没有文件的话,创建一个),添加以下内容。

kaeruspoon.net kaeruspoon-mailman:

收到kaeruspoon.netdomain的邮件的时候,用master.cf设定的kaeruspoon-mailman的命令,执行这个命令。

为了让以上的设置有效,执行以下的命令。

postmap /etc/postfix/transport

这样就设置完成。核对/var/log/mail.info,确认一下收到的邮件是否正确的传到Rails。

参考URL

http://www.kaeruspoon.net/articles/466



版权声明:本文为iteye_4981原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。