文件被用来完成邮件转发、别名或调用其他程序如ezmlm等进行处理。若没有找到匹配,则QMail-local查找.QMail-default文件,这是QMail-local邮件投递机制中最后一步。 VPOPmail利用该文件来调激活vdelivermail 程序,该程序以两个参数被调用,第一个当前没有作用,主要是用作向后兼容的;第二个参数是用来在一个虚拟域用户没有被找到时的缺省投递,一般来说,缺省投递可以是将邮件投递到某个目录或某个邮件地址或返回无此用户的返回信件(第二个参数若为bounce-no-mailbox,则返回无此用户的信件;若第二个参数为/home/vPOPmail/domains/domain.com.cn/0/test,则当没有对应于邮件投递目的地址时,该邮件将被投递到test@com.cn的用户)。
从上面的机制中可以看到,通过QMailadmin为ideal用户创建邮件自动回复时会在用户所在的域目录中(如:/home/vPOPmail/domains/domains.com.cn中创建.QMail-ideal文件,当.QMail-local进入assign处理以后将会首先进行标准的.QMail文件操作,所以将会根据该文件进行邮件自动回复。现在我们看看.QMail-ideal的文件内容: /usr/local/bin/autorespond 10000 5 /home/vPOPmail/domains/domain.com.cn/AU
TORESPONGDING/message /home/vPOPmail/domains/domain.com.cn/AUTORESPONGDING &ideal@net.cn
其中 表示调用一个程序来处理该邮件这里是调用autorespond来处理;10000表示允许处理信件的总时间;5表示在这段时间内的最大邮件数;
/home/vPOPmail/domains/domain.com.cn/AU
TORESPONGDING/message指示自动回复的邮件内容的消息文件;
/home/vPOPmail/domains/domain.com.cn/AUTORESPONGDING指定log文件位置。其中&ideal@nte.cn表示同时将邮件转发给&ideal@net.cn,也可以在添加自动回复时不指定转发。
ezmlm-0.53.tar.gzhttp://WWW.ezmlm.org/
ezmlm-0.53是一个由Dan J. Bernstein编写的基于QMail的邮件列表管理软件,它具有邮件列表管理器所应该具有的所有基本功能,例如订阅者地址列表管理、自动消息退回处理和消息发布和归档等等。
2、QMailadmin的安装配置选项
在编译该软件包以前,需要根据自己的需要对软件包进行编译配置,下面我们就讨论所有的配置选项含义如下(配置选项的使用方法为:./configure
conf_option=chosen):
若您的服务器的cgi-bin不在标准的位置,则使用该配置选项指定正确的cgi-bin目录的位置:
--enable-cgibindir={dir} WWW服务器的cgi-bin目录路径
若您不希望邮件管理界面的HTML模版存放在/usr/local/share/QMailadmin,则使用该选项:
--with-htmllibdir={dir} QMailadmin HTML 模版存放目录路径
若您的QMail路径不是缺省的/var/QMail,则使用该选项指定正确的QMail安装路径:
--enable-QMaildir={dir} QMail的安装路径
若访问WWW服务器时的cgi-bin路径不是/cgi-bin/cgi_program则需要指定该配置选项:
--enable-cgipath={/cgi-bin/QMailadmin}
若vPOP用户不是缺省的vchkpw用户,则使用该选项指定正确的用户名:
--enable-vPOPuser={vPOPuser}
若autorespond安装路径不是缺省的/user/local/bin,则使用该选项指定路径:
--enable-autoresponder-bin={path}
若ezmlm 安装路径不是缺省的 /user/local/bin/ezmlm,则使用该选项指定路径:
--enable-ezmlmdir={dir}
若希望限定系统的最大POP用户数量则使用该选项指定:
--enable-maxPOPusers=unlimited -1为没有限制,0则是关闭该功能使用该选项指定系统的最大别名(alias)数:
--enable-maxaliases=unlimited -1为没有限制,0则是关闭该功能使用该选项指定系统的最大邮件转发(forward)数:
--enable-maxforwards=unlimited -1为没有限制,0则是关闭该功能使用该选项指定系统的最大邮件自动回复(autoresponder)数:
--enable-maxautorepsonders=unlimited -1为没有限制,0则是关闭该功能使用该选项来设定系统最大的邮件列表数量:
--enable-maxmailinglists=unlimited 缺省为没有限制。
3、QMailadmin及相关软件包的编译
autorespond的编译生成:
[root@mail src]# tar xvfz autorespond-1.0.0.tar.gz
[root@mail src]# [root@WWW src]# cd autorespond-1.0.0
[root@mail autorespond-1.0.0]# gcc -Wall -o autorespond autorespond.c
[root@mail autorespond-1.0.0]# cp autorespond /usr/local/bin/
ezmlm的编译生成:
[root@mail src]# tar xvfz ezmlm-0.53.tar.gz
[root@mail src]# cd ezmlm-0.53
[root@mail ezmlm-0.53]# make
[root@mail ezmlm-0.53]# make man
[root@mail ezmlm-0.53]# make seup
QMailadmin的编译生成(这里是按照前两篇文章的缺省安装进行配置的):
1
[root@WWW QMailadmin-0.38]# ./configure --enable-cgibindir=/usr/local/Apache/cgi
-bin/ --enable-cgipath=/cgi-bin/QMailadmin
2
[root@WWW QMailadmin-0.38]# make clean
3
[root@WWW QMailadmin-0.38]# make
在进行make这一步时,可能会出现如下的错误:
gcc -g -O2 -o QMailadmin QMailadmin.o alias.o autorespond.o forward.o mailing list.o sysadmin.o user.o util.o auth.o template.o command.o show.o cgi.o limits.
o dotQMail.o -L/home/vPOPmail/lib -lvPOPmail -lnsl -lm -lcrypt
/home/vPOPmail/lib/libvPOPmail.a(vauth.o): In function `vauth_open':
/usr/src/vPOPmail-4.9.4/vauth.c:59: undefined reference to `MySQL_init'
/usr/src/vPOPmail-4.9.4/vauth.c:61: undefined reference to `MySQL_real_connect'
... ...
你需要使用vi修改/usr/src/QMailadmin-0.38/Makefile文件,将:
COMMONLDADD = -L/home/vPOPmail/lib -lvPOPmail
修改为:
COMMONLDADD = -L/usr/local/lib/MySQL/ -lMySQLclient -L/home/vPOPmail/lib -lvPOPmail
注: "/usr/local/lib/MySQL/"为你按照缺省路径安装MySQL时的路径,若你的系统将MySQL安装在别的路径,则需要在这里指定正确的MySQL库的安装路径,即寻找libMySQLclient.a的路径
4
[root@WWW QMailadmin-0.38]# make install-strip